Without at all trying to be comprehensive, different nodes means different instances. Parameters could be different, what is in cache could be different, AWR could have different accumulations of various things, and the parameter values of a given sql that was parsed first on a given instance could be different. Anything that the optimizer at the release level you are at can use that is specific to an instance rather than a database is a candidate for examination. If one plan is "good enough" for all predicate values, then your solution is likely to be some variety of plan stabilization for that sql. My first guess is that the initial parse on the two different "nodes" had wildly different predicate values so that the "bad" plan was actually less costly for that particular set. Regards, mwf _____ From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of fairlie rego Sent: Wednesday, June 06, 2007 10:13 PM To: Oracle-L Subject: Varying plans on different nodes <snip>