Just another Oracle blog
Thanks to everyone that attended my session. Here’s a quick link to a zip file with the scripts I used in my Controlling Execution Plans Workshop presentation.
Thank you Kerry. It was a great session yesterday.
As usual, another good article from you, Kerry. Yours’ is one of the best blogs around that I keep visiting very frequently – Thank you.
I can understand few experts are around, but, I find very tough to understand their blogs on topics.
I visited your workshop at the DOAG in Nürnberg. Great presentation!
I got two questions
1) did I understand it right, that the parser take the sql and if it finds an sql baseline plan for it, it will apply all the hints of the accepted and enabled plan. If the resulting plan has the same hash as the baseline plan it will choose that one. If the hash doesn’t match it will discard the baseline and choose that plan that was generated. Is that right?
2) is there anyway to find out why the plan of the baseline is not reproduceable or what has changed? May be a view, an event or a trace.
1. Yes – baseline hints are discarded if the plan hash value is not matched. In that case the optimizer will fall back to another baseline or the default optimization (i.e. with no hints).
2. Not that I’m aware of. In 12c you can see the plan that the baseline was attempting to reproduce using the dbms_xplan.display_sql_plan_baseline procedure though. The plan is not stored for execution purposes, but the xplan representation of the plan is stored so that you can see what the baseline was attempting to reproduce.
Mail (will not be published)