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

DB2 instance may abend due to stack overflow (instead of dumping SQL0973N)
while processing a very large predicate

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
During SQL/XQuery compilation, a very large and complex 
expression in the query being compiled may cause the DB2 
 
instance to abend due to a stack overflow exception. Although 
new behaviour in DB2 Version 9.5 should ideally cause 
the DB2 agent to dump an sqlcode SQL0973N upon detecting such a 
scenario, this may not happen when a very large expression, 
 
e.g., deeply nested series of ORs, etc., is present in the 
query. 
The stack trace from such an abend will look something like: 
 
sqlnr_in2or_cond_traverse <repeated thousands of times> 
sqlnr_sinlist2or 
sqlnr_optprep 
sqlnr_optprep_action 
sqlnr_comp 
 
or 
 
sqlnr_pullup_trans_pid <repeated thousands of times> 
sqlnr_compensate_prd 
sqlnr_subsume_prds 
sqlnr_subsume_derived_match 
sqlnr_subsume_match 
sqlnr_compute_matchinfo 
sqlnr_optprep
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* ALL                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* During SQL/XQuery compilation, a very large and              * 
* complexexpression in the query being compiled may cause the  * 
* DB2instance to abend due to a stack overflow                 * 
* exception.Althoughnew behaviour in DB2 Version 9.5 should    * 
* ideally causethe DB2 agent to dump an sqlcode SQL0973N upon  * 
* detectingsuch ascenario, this may not happen when a very     * 
* large expression,e.g., deeply nested series of ORs, etc., is * 
* present in thequery.The stack trace from such an abend will  * 
* look something like:sqlnr_in2or_cond_traverse <repeated      * 
* thousands of                                                 * 
* times>sqlnr_sinlist2orsqlnr_optprepsqlnr_optprep_actionsqlnr_c 
* <repeated thousands of                                       * 
* times>sqlnr_compensate_prdsqlnr_subsume_prdssqlnr_subsume_deri 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Look to Upgrade to a Version 9.7 Fix Pack 3 or later         * 
****************************************************************
Local Fix:
In DB2 Version 9.5, users have the ability to control the size 
of the runtime stack used by a DB2 agent. Consequently, 
increasing 
the value for the "agent_stack_sz" database configuration 
parameter may help workaround the issue.
available fix packs:
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 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 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 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

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