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 IC67983 Status: Closed

QUERY PERFORMANCE CAN BE POOR WHEN JOINING TO A DATA PARTITIONED TABLE
USING THE DATA PARTITIONING COLUMNS.

product:
DB2 FOR LUW / DB2FORLUW / 980 - DB2
Problem description:
The DB2 Optimizer may underestimate the number of pages read 
from disk when a join to a data partitioned table is using the 
data partitioning columns. This can cause the optimizer to 
choose a plan that will perform poorly. 
 
This may be applicable to queries with an inner join involving a 
data partitioned table or an outer join when the NULL producing 
input to the join is a data partitioned table. In both cases, 
the query will have equality (=) join predicates involving all 
the data partitioning columns of the data partitioned table. 
 
For the poorly performing query, obtain the output from db2exfmt 
and look for a NLJOIN operator with a TBSCAN of the data 
partitioned table as the right-side input. Furthermore the 
estimated I/O cost of the NLJOIN will look small in comparison 
to the size of the data partitioned table. 
 
For example: 
            4.52747e+07 
              NLJOIN 
              (  27) 
              7.66338 
               1985                  <<< I/O Cost estimate is 
small given the large table 
        /-------+--------\ 
                         37666.1 
                         TBSCAN 
                         (  29) 
                         7.64325 
                          1985 
                           | 
                       4.52747e+07 
                   DP-TABLE: DB2INST1 
                       PARTTABLE1 
                           Q11 
 
When examining the operator details for the TBSCAN(29), the join 
predicates are used a DP Elim predicates: 
 
        DP Elim Predicates: 
        ----------------- 
        Range 1) 
            Start Predicate: (Q11.PARTCOL = Q10.COL1 
            Stop  Predicate: (Q11.PARTCOL = Q10.COL1
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See above.                                                   * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to Version 9.8 Fix Pack 3 or later release that      * 
* contains the fix.                                            * 
****************************************************************
Local Fix:
1) Create an optimization profile for the query forcing either a 
different join method for the join in question or forcing the 
access of the data partitioned table to use an IXSCAN of a good 
index. 
 
2) Increase the values for SYSSTAT.TABLES.NPAGES and 
SYSSTAT.TABLES.FPAGES for the data partitioned table until a 
different plan is chosen.
available fix packs:
DB2 Version 9.8 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.8 Fix Pack 4 for AIX and Linux
DB2 Version 9.8 Fix Pack 5 for AIX and Linux

Solution
Problem was first fixed in Version 9.8 Fix Pack 3.
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
16.04.2010
06.01.2011
06.01.2011
Problem solved at the following versions (IBM BugInfos)
9.8.FP3
Problem solved according to the fixlist(s) of the following version(s)
9.8.0.3 FixList