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

Incorrect result with multiple IN list to join (GENROW) plans via
transivity on SMP and MPP environment

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
In MPP and SMP environment, query with multiple IN list to join 
(GENROW) plans generated via transivity on SMP and MPP 
environment might have incorrect results. 
 
Query example: select * from a, b where a1 = b1 and a1 in (1, 2, 
3, 4, 5, 6, 7, 8, 9, 10); 
The optimized query would generate second IN list via 
transitivity: a1 = b1 and a1 in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) 
and b1 in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) 
 
If query plan result with two GENROW plans (both MGJN in this 
example), due to unexpected interaction of MPP and SMP planning 
for the GENROW plans, incorrect result produced. 
 
          HSJN 
         /     \ 
MGJN(1)     MGJN(2) 
     /    \         /     \ 
SORT ISCAN SORT ISCAN 
  |                  | 
GENROW      GENROW 
 
This can happen for a variety of combination of GENROW plans, 
not just MGJN plans. The problem is specific to release v9.5, 
and would be fixed in v9.5 FP5 and laster release.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* n/a                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* In MPP and SMP environment, query with multiple IN list to   * 
* join                                                         * 
* (GENROW) plans generated via transivity on SMP and MPP       * 
*                                                              * 
* environment might have incorrect results.                    * 
*                                                              * 
*                                                              * 
*                                                              * 
* Query example: select * from a, b where a1 = b1 and a1 in    * 
* (1, 2,                                                       * 
* 3, 4, 5, 6, 7, 8, 9, 10);                                    * 
*                                                              * 
* The optimized query would generate second IN list via        * 
*                                                              * 
* transitivity: a1 = b1 and a1 in (1, 2, 3, 4, 5, 6, 7, 8, 9,  * 
* 10)                                                          * 
* and b1 in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)                    * 
*                                                              * 
*                                                              * 
*                                                              * 
* If query plan result with two GENROW plans (both MGJN in     * 
* this                                                         * 
* example), due to unexpected interaction of MPP and SMP       * 
* planning                                                     * 
* for the GENROW plans, incorrect result produced.             * 
*                                                              * 
*                                                              * 
*                                                              * 
*           HSJN                                               * 
*                                                              * 
*          /     \                                             * 
*                                                              * 
* MGJN(1)     MGJN(2)                                          * 
*                                                              * 
*      /    \         /     \                                  * 
*                                                              * 
* SORT ISCAN SORT ISCAN                                        * 
*                                                              * 
*   |                  |                                       * 
*                                                              * 
* GENROW      GENROW                                           * 
*                                                              * 
*                                                              * 
*                                                              * 
* This can happen for a variety of combination of GENROW       * 
* plans,                                                       * 
* not just MGJN plans. The problem is specific to release      * 
* v9.5,                                                        * 
* and would be fixed in v9.5 FP5 and laster release.           * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 Version 9.7 Fixpack 1                         * 
****************************************************************
Local Fix:
SET CURRENT DEGREE = '1' 
or 
DB2_EXTENDED_IN2JOIN=IN2JOIN_OFF
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
First fixed in DB2 Version 9.7 Fixpack 1
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
22.10.2009
23.02.2010
23.02.2010
Problem solved at the following versions (IBM BugInfos)
9.7.FP1
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.1 FixList