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

DB2 MAY ABEND WHILE COMPILING A QUERY WITH HASH PARTITIONED TABL E AND
ALWAYS FALSE PREDICATE DUE TO PRESENCE OF ROLLUP OR CUBE

product:
DB2 FOR LUW / DB2FORLUW / 950 - DB2
Problem description:
Db2 may abend under all the following conditions: 
1. The table is hash partitioned 
2. There is a ROLLUP or CUBE grouping. 
3. There is a always false predicate. eg. 1<>1 
 
 
The following stack trace is observed: 
<StackTrace> 
pthread_kill 
sqloDumpEDU 
sqldDumpContext 
sqldDumpContext 
sqlrr_dump_ffdc 
sqlzeDumpFFDC 
sqlzeSqlCode 
sqlnn_erds 
propagate_partitioning 
local_select_box 
local_box_analysis 
pdb_box_analysis 
pdb_graph_analysis 
sqlnq_pdb_analysis 
sqlnr_exe 
sqlnr_exe 
sqlnn_cmpl 
sqlnn_cmpl 
sqlra_compile_var 
sqlra_find_var 
sqlra_get_var 
sqlrr_prepare 
sqljs_ddm_prpsqlstt 
sqljsParseRdbAccessed 
.sqljsParse.fdpr.clone.16 
@64@sqljsSqlam 
@64@sqljsDriveRequests 
@64@sqljsDrdaAsInnerDriver 
sqljsDrdaAsDriver 
RunEDU 
EDUDriver 
sqloEDUEntry + 0x260 
</StackTrace>
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All.                                                         * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* Abstract:                                                    * 
* DB2 MAY ABEND WHILE COMPILING A QUERY WITH HASH PARTITIONED  * 
* TABLE AND ALWAYS FALSE PREDICATE DUE TO PRESENCE OF ROLLUP   * 
* OR CUBE.                                                     * 
*                                                              * 
*                                                              * 
* Description:                                                 * 
* Db2 may abend under all the following conditions:            * 
* 1. The table is hash partitioned                             * 
* 2. There is a ROLLUP or CUBE grouping.                       * 
* 3. There is a always false predicate. eg. 1<>1               * 
*                                                              * 
*                                                              * 
* The following stack trace is observed:                       * 
* <StackTrace>                                                 * 
* pthread_kill                                                 * 
* sqloDumpEDU                                                  * 
* sqldDumpContext                                              * 
* sqldDumpContext                                              * 
* sqlrr_dump_ffdc                                              * 
* sqlzeDumpFFDC                                                * 
* sqlzeSqlCode                                                 * 
* sqlnn_erds                                                   * 
* propagate_partitioning                                       * 
* local_select_box                                             * 
* local_box_analysis                                           * 
* pdb_box_analysis                                             * 
* pdb_graph_analysis                                           * 
* sqlnq_pdb_analysis                                           * 
* sqlnr_exe                                                    * 
* sqlnr_exe                                                    * 
* sqlnn_cmpl                                                   * 
* sqlnn_cmpl                                                   * 
* sqlra_compile_var                                            * 
* sqlra_find_var                                               * 
* sqlra_get_var                                                * 
* sqlrr_prepare                                                * 
* sqljs_ddm_prpsqlstt                                          * 
* sqljsParseRdbAccessed                                        * 
* .sqljsParse.fdpr.clone.16                                    * 
* @64@sqljsSqlam                                               * 
* @64@sqljsDriveRequests                                       * 
* @64@sqljsDrdaAsInnerDriver                                   * 
* sqljsDrdaAsDriver                                            * 
* RunEDU                                                       * 
* EDUDriver                                                    * 
* sqloEDUEntry + 0x260                                         * 
* </StackTrace>                                                * 
*                                                              * 
*                                                              * 
* Local fix:                                                   * 
* Replace ROLLUP or CUBE with corresponding GROUPING SETS. For * 
*                                                              * 
* example, GROUP BY ROLLUP(C1),ROLLUP(c2) can be rewritten as: * 
*                                                              * 
* group by grouping sets ( (col1,col2),(col1),(col2),());      * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Update to db2 version 9.5 fixpack 8 or later fixpack.        * 
****************************************************************
Local Fix:
Replace ROLLUP or CUBE with corresponding GROUPING SETS. For 
example, GROUP BY ROLLUP(C1),ROLLUP(c2) can be rewritten as: 
     group by grouping sets ( (col1,col2),(col1),(col2),());
available fix packs:
DB2 Version 9.5 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.5 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.5 Fix Pack 10 for Linux, UNIX, and Windows

Solution
This problem is first fixed in db2 version 9.5 fixpack 8.
Workaround
Replace ROLLUP or CUBE with corresponding GROUPING SETS. For 
example, GROUP BY ROLLUP(C1),ROLLUP(c2) can be rewritten as: 
 
 
    group by grouping sets ( (col1,col2),(col1),(col2),());
BUG-Tracking
forerunner  : APAR is sysrouted TO one or more of the following: IC74775 
follow-up : 
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
28.02.2011
30.06.2011
30.06.2011
Problem solved at the following versions (IBM BugInfos)
9.5.FP8
Problem solved according to the fixlist(s) of the following version(s)
9.5.0.8 FixList