DB2 - Problem description
Problem IT17489 | Status: Closed |
SELECT AGAINST AN MDC TABLE WITH A RANGE PREDICATE IN SMP MIGHT RETURN A WRONG RESULT | |
product: | |
DB2 FOR LUW / DB2FORLUW / B10 - DB2 | |
Problem description: | |
In a rare timing scenario SQL doing a range table scan on a MDC table in SMP mode only could loose rows from the result set. There are optimizations in DB2 to determine the best next range for each subagent to scan based on the usage of the system. However, the calculation in the optimization does not ensure each scan range is within the MDC block boundary and end up with a range covering more than a single block. On the other hand, block predicate evaluation on a MDC table scan is done only once per range since it does not expect the scan range to cross a block boundary, it can incorrectly skip pages that would have been qualified for the scan predicate. And this is timing related. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * MDC Tables * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Please, apply this fix. * **************************************************************** | |
Local Fix: | |
Disable SMP mode. Or don't specify a range predicate on the MDC columns. | |
available fix packs: | |
DB2 Version 11.1 Mod1 Fix Pack1 iFix001 for Linux, UNIX, and Windows | |
Solution | |
Please, apply this fix. | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 13.10.2016 10.10.2017 10.10.2017 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
11.1.1.1 |