What Application Design considerations should I be aware of when moving to Oracle RAC?
The general principals are that fundamentally no different design and coding practices are required for RAC however application flaws in execution or design have a higher impact in RAC. The performance and scalability in RAC will be more sensitive to bad plans or bad schema design. Serializing contention makes applications less scalable. If your customer uses standard SQL and schema tuning, it solves > 80% of performance problems Some of the scaleability pitfalls they should look for are: * Serializing contention on a small set of data/index blocks –> monotonically increasing key –> frequent updates of small cached tables –> segment without automatic segment space management (ASSM) or Free List Group (FLG) * Full table scans –> Optimization for full scans in 11g can save CPU and latency * Frequent invalidation and parsing of cursors –> Requires data dictionary lookups and synchronizations * Concurrent DDL ( e.g.