Christian Antognini untersucht in seinem Blog die Darstellung adaptiver Pläne in ASH. Dabei weist er zunächst darauf hin, dass zu den unterschiedlichen Plan-Varianten unterschiedliche plan hash values vorliegen (was keine besondere Überraschung darstellt). Wenn die runtime engine während der Ausführung der Query auf den Alternativplan ausweicht, dann erscheint anschließend der plan hash value der neuen Variante in v$active_session_history. Interessant ist dabei, dass der Wechsel des hash values offenbar mit einer leichten Verzögerung dargestellt wird, also nicht exakt mit der tatsächlichen Plan-Verwendung korrespondiert, was durch das clevere Test-Arrangement sichtbar wird (bei dem für jede verarbeitete Zeile eine Wartezeit eingebaut ist). Abgesehen von dieser Ungenauigkeit entspricht das Verhalten ziemlich genau dem, was ich erwartet hätte, aber es ist immer nützlich, wenn solche Annahmen verifiziert werden können.
Keine Kommentare:
Kommentar veröffentlichen