DB2 - Problem description
Problem IT07016 | Status: Closed |
WHEN INTRA_PARALLEL IS ENABLED, A SQL0901N ERROR CAN BE RETURNED WHEN COMPILING A QUERY | |
product: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
Problem description: | |
A query might return SQL0901N and produce a stack with the following: <StackTrace> -------Frame------ ------Function + Offset------ 0x090000000055BF54 pthread_kill + 0xD4 0x09000000102BD9F0 sqloDumpEDU + 0xD0 0x090000000F75DD44 sqldDumpContext__FP9sqeBsuEduiN42PCcPvT2 + 0x104 0x0900000010FD3964 sqlrr_dump_ffdc__FP8sqlrr_cbiT2 + 0x52C 0x0900000010FD138C sqlzeDumpFFDC__FP8sqeAgentUiP5sqlcai + 0x28 0x0900000010FD1530 sqlzeSqlCode__FP8sqeAgentUiUlT2P5sqlcaiUsPc + 0xCC 0x0900000010FD427C sqlnn_erds__FiN41e + 0x134 0x0900000014836560 sqlnoSmpTransformGroupByOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POS TOPT_CONTEXTPP19sqlno_plan_operator + 0x604 0x0900000014835054 sqlnoSmpTransformMGJNOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POSTOP T_CONTEXTPP19sqlno_plan_operator + 0x354 0x090000001482EFDC sqlnoSmpTransformSimpleOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POST OPT_CONTEXTPP19sqlno_plan_operator + 0x304 0x090000001482EFDC sqlnoSmpTransformSimpleOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POST OPT_CONTEXTPP19sqlno_plan_operator + 0x304 0x0900000014831118 sqlnoSmpTransformSortOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POSTOP T_CONTEXTPP19sqlno_plan_operator + 0x350 0x0900000014832198 sqlnoSmpTransformScanOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POSTOP T_CONTEXTPP19sqlno_plan_operator + 0x3E0 0x09000000148362A0 sqlnoSmpTransformGroupByOp__FP20SQLNO_SMP_POSTOPT_CBP21SQLNO_POS TOPT_CONTEXTPP19sqlno_plan_operator + 0x344 0x0900000012CBE9BC sqlnoSmpTransformSubsection__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_pl an_operator + 0x4A4 0x09000000147E5768 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x3B8 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5670 sqlnoSmpTransformPass__FP20SQLNO_SMP_POSTOPT_CBP19sqlno_plan_ope rator + 0x2C0 0x09000000147E5354 sqlnoSmpPostPassMain + 0x384 0x09000000119DAD00 sqlno_final_phase__FP13sqlno_globals + 0x84C 0x0900000011562F30 sqlno_exe__FP9sqlnq_qur + 0x844 0x09000000113BB3D4 sqlnn_cmpl__FP8sqeAgentP11sqlrrstrings17sqlnn_compileModeT3P14sq lrr_cmpl_enviT7PP9sqlnq_qur + 0xE8C 0x09000000113BCCBC sqlnn_cmpl__FP8sqeAgentP11sqlrrstrings17sqlnn_compileModeT3P14sq lrr_cmpl_env + 0x50 0x09000000111E614C sqlra_compile_var__FP8sqlrr_cbP14sqlra_cmpl_envPUciUsN54P14SQLP_ LOCK_INFOP16sqlra_cached_varPi + 0x768 0x090000001142BC88 sqlra_find_var__FP8sqlrr_cbP17sqlra_cached_stmt13sqlra_stmt_idUi T4PUcT4UsUcP14sqlra_cmpl_env15sqlra_fill_modePiiT12_N313_T12_P14 SQLP_LOCK_INFOPP16sqlra_cached_varT12_b + 0x89C 0x090000001109D36C sqlra_get_var__FP8sqlrr_cbiT2bPbT5 + 0x1A8 0x0900000010C7040C sqlrr_execute_immediate__FP8sqlrr_cbi + 0x108 0x0900000010C6FDF8 sqlrr_execimmd__FP14db2UCinterfaceP16db2UCprepareInfo + 0x4E8 0x0900000010C6DCC8 sqljs_ddm_excsqlimm__FP14db2UCinterfaceP13sqljDDMObject + 0xE08 0x0900000010C6AE0C sqljsParseRdbAccessed__FP13sqljsDrdaAsCbP13sqljDDMObjectP14db2UC interface + 0x38 0x0900000011250204 .sqljsParse.fdpr.clone.82__FP13sqljsDrdaAsCbP14db2UCinterfaceP8s qeAgentb + 0x1BD8 0x0900000011258674 @73@sqljsSqlam__FP14db2UCinterfaceP8sqeAgentb + 0x2E8 0x0900000010DE0EE4 @73@sqljsDriveRequests__FP8sqeAgentP14db2UCconHandle + 0xB4 0x0900000010DE193C @73@sqljsDrdaAsInnerDriver__FP18SQLCC_INITSTRUCT_Tb + 0x558 0x0900000010DE0BB0 sqljsDrdaAsDriver__FP18SQLCC_INITSTRUCT_T + 0x21C 0x0900000010FE0E64 RunEDU__8sqeAgentFv + 0x594 0x0900000010FE0114 EDUDriver__9sqzEDUObjFv + 0x13C 0x0900000010FDFF9C sqlzRunEDU__FPcUi + 0x10 0x0900000010FF36BC sqloEDUEntry + 0x264 </StackTrace> The db2diag.log will have entries like: FUNCTION: DB2 UDB, relation data serv, sqlrr_dump_ffdc, probe:300 DATA #1 : SQLCA, PD_DB2_TYPE_SQLCA, 136 bytes sqlcaid : SQLCA sqlcabc: 136 sqlcode: -901 sqlerrml: 58 sqlerrmc: sqlnoSmpTransformGroupByOp[100]:rc( 0) sqlerrp : SQLNO37E The problem only occurs when intra_parallel is enabled. It can be further identified by collecting an explain with the current degree special register set to 1. The explain will have a MSJOIN with a pGRPBY operator as the first outer operator and the join predicate columns of the MSJOIN are also referenced by local equality predicates such as T1.A=T2.A and T1.A=1. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 Version 10.1 and Fix Pack 5 * **************************************************************** | |
Local Fix: | |
You can avoid the error by requesting the optimizer to use a degree of parallelism of 1. This can be applied using the "current degree" special register or a DEGREE optimization guideline. | |
Solution | |
Problem was first fixed in DB2 Version 10.1 and Fix Pack 5 | |
Workaround | |
See Local Fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 06.02.2015 13.07.2015 13.07.2015 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
10.1.0.5 |