RE: Bind Variable Peeking issue
- From: "Allen, Brandon" <Brandon.Allen@xxxxxxxxxxx>
- To: "Santhosh.Channa@xxxxxxxxxxxx" <Santhosh.Channa@xxxxxxxxxxxx>, "krishna000@xxxxxxxxx" <krishna000@xxxxxxxxx>, "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
- Date: Thu, 17 Sep 2009 09:35:17 -0700
Bala, beware that disabling bind variable peeking at the system level could have a major impact on all other queries using bind variables on the system so it should be done with caution after thoroughly testing on a test database first. You don't have to analyze the table to invalidate it's dependent cursors - you can just issue a grant on it (e.g. grant select on mytable to system). This is much faster and avoids the performance impact and other potential side effects of updating statistics. In order to answer why this type of invalidation didn't resolve the problem you need to dig deeper to see exactly what's happening - keep an eye on the child_number and plan_hash_value columns of v$sql and also v$sql_bind_capture to see exactly what bind variables are being evaluated at hard parse time and what plans are being chosen for those variables. Regards, Brandon ________________________________ Privileged/Confidential Information may be contained in this message or attachments hereto. Please advise immediately if you or your employer do not consent to Internet email for messages of this kind. Opinions, conclusions and other information in this message that do not relate to the official business of this company shall be understood as neither given nor endorsed by it.