DB2 - Problem description
Problem IC62088 | Status: Closed |
LOAD UTILITY MAY MARK A ROW BIT INCORRECTLY CAUSING INDEX SCAN TO RETURN INCORRECT RESULTS | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
LOAD utility may set a row bit in an untimely fashion, causing index scan to skip that row and return incorrect results. The following sequence of events may cause the problem: - A load has been done some time in the past (could be years ago) and has loaded rowA, and set the LOAD bit which was not unset after the LOAD was done. - An index scan starts - A new load starts - The index scan attempts to fetch a key, and it sees the key for rowA, which still has the LOAD bit set. As a result, the scan will incorrectly skip rowA and carry on without returning it. | |
Problem Summary: | |
A problem has been found in the code which allowed index scan and concurrent load operation to interfere with each other such that LOAD bit was not unser following a load, causing incorrect result to be returned by the scan. | |
Local Fix: | |
n/a | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 1 for Linux, UNIX, and Windows | |
Solution | |
The problem has been corrected such that index manager will track when load operation is in progress in the affected index scan code path. This will allow index manager to accurately decide whether to include particular row into scan results while load is running. After the fix is applied, future loads will not cause this problem because index manager will handle it. Also, the fix provides correct querying capability to data previously loaded which may have the LOAD bit set. | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 20.07.2009 08.12.2009 08.12.2009 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.1 |