DB2 - Problembeschreibung
Problem IC73781 | Status: Geschlossen |
JUST-IN-TIME STATISTICS MAY BE INACCURATE FOR PARTITIONED INDEXES ON RANGE PARTITIONED TABLES | |
Produkt: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problembeschreibung: | |
The index manager attempts to keep up-to-date values for full key cardinality and the number of leaf pages for the optimizer's Just-In-Time statistics feature. When we issue a CREATE or REORG INDEX command, we get accurate values and then we keep them up to date during insert/update/delete activities. When RUNSTATS is executed we update these values with accurate values -- this is important as these values can degrade over time as they are only hardened to disk periodically. The code to update the values during RUNSTATS was broken for partitioned indexes. Without this fix, instead of having correct values in each index partition's control block, we have 0 for each partition, but correct summarized values stored in the last index partition's control block. When the optimizer gets the Just-In-Time statistics from the index manager for a partitioned index, it will choose a partition that is not the last partition and instead of getting valid values for these stats, it will get zeros and will think that the index scan will perform much faster than it actually will. | |
Problem-Zusammenfassung: | |
**************************************************************** * USERS AFFECTED: * * All users * **************************************************************** * PROBLEM DESCRIPTION: * * For the optimizer's Just-In-Time statistics feature, the * * index manager attempts to keep up-to-date values for full * * key cardinality and the number of leaf pages. When we issue * * a CREATE or REORG INDEX command, we get accurate values and * * then we keep them up to date during insert/update/delete * * activities. When RUNSTATS is executed we update these * * values with accurate values -- this is important as these * * values can degrade over time as they are only hardened to * * disk periodically. The code to update the values during * * RUNSTATS was broken for partitioned indexes. Without this * * fix, instead of having correct values in each index * * partition's control block, we have 0 for each partition, but * * correct summarized values stored in the last index * * partition's control block. When the optimizer gets the * * Just-In-Time statistics from the index manager for a * * partitioned index, it will choose a partition that is not * * the last partition and instead of getting valid values for * * these stats, it will get zeros and will think that the index * * scan will perform much faster than it actually will. * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 9.7.0.4. * **************************************************************** | |
Local-Fix: | |
verfügbare FixPacks: | |
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows | |
Lösung | |
The problem is fixed in DB2 9.7.0.4. | |
Workaround | |
keiner bekannt / siehe Local-Fix | |
Weitere Daten | |
Datum - Problem gemeldet : Datum - Problem geschlossen : Datum - der letzten Änderung: | 11.01.2011 29.04.2011 29.04.2011 |
Problem behoben ab folgender Versionen (IBM BugInfos) | |
9.7.0.4 | |
Problem behoben lt. FixList in der Version | |
9.7.0.4 |