Adaptive Cursor Sharing II

Siguiendo con el post anterior he probado con otra distribucion de datos y pasando las variables de STATE del 0 al 10:

 
     STATE CNT_PER_STATE STATE_PERCENT 
---------- ------------- ------------- 
         0         10000            10 
         1            10           .01 
         2         15000            15 
         3            10           .01 
         4            10           .01 
         5         22000            22 
         6            10           .01 
         7            10           .01 
         8            10           .01 
         9         15000            15 
        10         37940         37.94  

Planes generados   

SQL_FULLTEXT                                                                     SQL_ID        PARSE_CALLS EXECUTIONS VERSION_COUNT INVALIDATIONS 
-------------------------------------------------------------------------------- ------------- ----------- ---------- ------------- ------------- 
select  /* ACS-LSCC */                                                           1pq13qpqfza6x          11         11             7             0 
        id, state, count(*) 
from t1 
where state = :state   

Y en vez de 6 planes ahora genera 7 asi que parece que la sospecha es correcta. El CBO hace bind peeking hasta que encuentre un punto estable, que puede ser despues de varias consultas y ve que la selectividad es my similar y para ahi.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s