home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC64075 Status: Closed

UR SCAN MAY SKIP PSEUDO-DELETED KEYS AND RETURN INCORRECT RESULT

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
During an uncommitted read (UR) index scan, and when dealing 
with sargable index predicates, DB2 index manager may skip some 
pseudo-deleted keys and return incorrect result. Namely, after a 
sargable index predicate is evaluated to TRUE, if the index key 
is marked pseudo-deleted and the scan is not locking, the 
predicate evaluation result is erroneously changed to FALSE. 
This will cause the UR scan to incorrectly skip the 
pseudo-deleted key. This contradicts the design since this type 
of scan is expected to return pseudo-deleted keys. 
 
Here is one scenario where this issue can cause unexpected 
result with two transactions, T1 and T2: 
 
1. T1 pseudo-deletes an index key K1, but it does not commit. 
 
2. T2 issues another delete statement which contains index 
predicates. To find the matching keys T2 performs a UR scan 
using concurrent access. The key K1 matches the predicate and 
should be included in the UR scan result set; therefore, the T2 
delete statement should wait for T1 to either commit or roll 
back. 
 
3. T1 rolls back. 
 
T2 carries on without deleting the key K1 because it was not 
returned by the UR scan. The expected result is that the T2 scan 
should return K1, T2 should wait for T1 to roll back, and 
finally delete K1.
Problem Summary:
An incorrect conditional statement permitted the error 
condition described above.
Local Fix:
n/a
available fix packs:
DB2 Version 9.7 Fix Pack 1 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Solution
The code has been corrected such that the error condition is not 
longer allowed.
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
22.10.2009
28.10.2009
28.10.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 FixList