A fix is available
APAR status
Closed as program error.
Error description
An inefficient access path utilizing multi-index access can be selected based on a range predicate that can be grossly underestimated because it is either a host variable or a special register such as CURRENT DATE, CURRENT TIMESTAMP, etc. This can result in RID pool overflows and overall general poor performance. Additional symptoms and keywords. SQLPERFORMANCE SQLMIDX
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * All Db2 12 for z/OS users running * * queries with predicates referencing * * parameter markers or special registers * * and using indexes. * **************************************************************** * PROBLEM DESCRIPTION: * * An inefficient multi-index access * * plan can be chosen where the 2nd * * index plan and beyond don't provide * * much extra filtering when the * * following conditions are met. * * * * (1) Only one extra matching range * * predicate is provided by the 2nd * * index plan and beyond. * * (2) All other matching predicates * * from the 2nd index plan and beyond * * are overlapped with the 1st index * * plan. * * (3) The filter factor of the range * * predicate in (1) is underestimated * * because it references either a host * * variable or a special register such * * as CURRENT DATE, CURRENT TIMESTAMP, * * etc. * * * * The inefficient access plan will * * overall cause a suboptimal query * * performance problem. * **************************************************************** * RECOMMENDATION: * * Apply corrective PTF when available * **************************************************************** An inefficient multi-index access plan can be chosen where the 2nd index plan and beyond don't provide much extra filtering when the following conditions are met. (1) Only one extra matching range predicate is provided by the 2nd index plan and beyond. (2) All other matching predicates from the 2nd index plan and beyond are overlapped with the 1st index plan. (3) The filter factor of the range predicate in (1) is underestimated because it references either a host variable or a special register such as CURRENT DATE, CURRENT TIMESTAMP, etc. The inefficient access plan will overall cause a suboptimal query performance problem. The reason is that Db2 failed to consider the uncertainty in the filter factor of the range predicates described in (2).
Problem conclusion
The performance problem described above is fixed by taking into account the uncertainty of the predicates that have DSN_PREDICATE_TABLE.UNCERTAINTY set. SQLPERFORMANCE SQLMIDX
Temporary fix
Comments
APAR Information
APAR number
PH09753
Reported component name
DB2 OS/390 & Z/
Reported component ID
5740XYR00
Reported release
C10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-03-15
Closed date
2019-10-21
Last modified date
2019-11-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI65971
Modules/Macros
DSNXOGCM
Fix information
Fixed component name
DB2 OS/390 & Z/
Fixed component ID
5740XYR00
Applicable component levels
RC10 PSY UI65971
UP19/10/24 P F910
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"12.0","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"12.0","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
01 November 2019