Hi Stefan, Thanks for the hint about the alter session (tracing), overlooked that,... but If new plans are generated when tracing is on, wouldn't the same (new) ones be used when I switch it back off again, i.e. the old plans have been invalidated and discarded. RE an index may have a logical corruption : rebuilding any of the 5 indexes on this table "fixes" the problem. When we've traced testnap, the queries it uses, the ones that access SERVICE_T do so in isolation, ie SERVICE_T is the only table in the FROM clause. We were thinking that changing the plan could have avoided a bad index on another table (as rebuilding any of the 5 on service_t fixes the problem - so it couldn't be one of them), but we can't find the *other* table. still in the dark, but thanks Tony -- //www.freelists.org/webpage/oracle-l