A fix is available
APAR status
Closed as program error.
Error description
The user has a partitioned table with at least a Data Secondary Partitioned index (DPSI). The first two columns of the partitioned index have the following cardinality: COL1=1 COL2=5 So the combination of the distinct values of thetwo columns should be 5. However after a RUNSTATS , SYSIBM.SYSCOLDIST contains the following: ! COLGROUPCOLNO !CARDF! NUMCOLUMNS ------------------------------------------------ ! 00010002 ! 8 ! 2 ! 000100020003 ! 3 ! 3 ! 0001000200030004 ! 5 ! 4 CARDF of Colgroup 1,2 is 8 and obviously wrong. Effectively the CARDF of Colgroup 1,2 seems to be the sum of the CARDF of the other colgroups. This is the v13 apar for v12 apar PH45533.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * All Db2 13 for z/OS utility users of * * RUNSTATS or inline STATISTICS * * gathering statistics on a multi-column * * partitioned index that is not a DPSI. * **************************************************************** * PROBLEM DESCRIPTION: * * INCORROUT MSGDSNU616I intermediate * * keycard statistics during * * RUNSTATS INDEX on multi-column * * partitioned indexes resulting in * * incorrect CARDF in SYSIBM.SYSCOLDIST * **************************************************************** * RECOMMENDATION: * * Apply corrective PTF when available * **************************************************************** When the user executed RUNSTATS INDEX on a partitioned index with more than two key columns, the statistics reported incorrect intermediate correlation values in DSNU616I and the SYSIBM.SYSCOLDIST catalog table was updated with those values. The leading key columns had the same column value appearing across adjacent partitions. This resulted in wrong aggregation of the intermediate key cardinalities across partitions. This problem can also occur during REORG, LOAD, REBUILD INDEX utilities with inline STATISTICS index processing.
Problem conclusion
The code was modified to take into consideration the same intermediate key values spanning across partitions and arrive at the correct cardinality values for each set of columns. With this APAR, the intermediate key cardinalities are now calculated using a Hash algorithm. The intermediate key cardinalities will be accurate when the number of distinct values are lower than 100. For indexes with high number of distinct values at the intermediate level, the derived cardinalities will be only an estimate. With this APAR, since hash structures are now used for arriving at the intermediate cardinality, the user may receive MSGDSNU623I during aggregation, when executing the utility at the partition level. DSNU623I can be avoided by specifying FORCEROLLUP keyword when executing the utility at the partition level.
Temporary fix
Comments
×**** PE22/08/30 FIX IN ERROR. SEE APAR PH49119 FOR DESCRIPTION ×**** PE23/05/26 FIX IN ERROR. SEE APAR PH54783 FOR DESCRIPTION
APAR Information
APAR number
PH46351
Reported component name
DB2 OS/390 & Z/
Reported component ID
5740XYR00
Reported release
D10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-05-11
Closed date
2022-06-01
Last modified date
2023-09-11
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI80817
Modules/Macros
DSNUSIDX DSNUSIIX DSNUSEOF
Fix information
Fixed component name
DB2 OS/390 & Z/
Fixed component ID
5740XYR00
Applicable component levels
RD10 PSY UI80817
UP22/06/09 P F206
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"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"D10","Line of Business":{"code":"LOB10","label":"Data and AI"}}]
Document Information
Modified date:
12 September 2023