DB2 - Problembeschreibung
Problem IC99130 | Status: Geschlossen |
DB2 MAY TRAP IF AGGREGATE FUNCTION NAME IS USED AS AN ARGUMENT TO NESTED PROCEDURE CALL STATEMENT | |
Produkt: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problembeschreibung: | |
The DB2 instance may crash when attempting to create a stored procedure that contains a CALL statement that includes an aggregate function as an argument. This could happen if the aggregate function was meant to be defined as a variable but was not properly declared. For example, the following CREATE PROCEDURE statement could cause this failure: CREATE PROCEDURE P2() BEGIN CALL P1(COUNT); END A trap file will be produced containing a stack trace that looks like this: _Z25ossDumpStackTraceInternalmR11OSSTrapFileiP7siginfoPvmm + 0x020a ossDumpStackTraceV98 + 0x002b _ZN11OSSTrapFile6dumpExEmiP7siginfoPvm + 0x0103 sqlo_trce + 0x0407 sqloEDUCodeTrapHandler + 0x0277 address: 0x00002AAAAABD4D60 ; dladdress: 0x00002AAAAABC7000 ; offset in lib: 0x000000000000DD60 ; _ZNK17sqlnq_expprdchild2ppEv + 0x0000 _Z17sqlnq_psm_sem_actPP8stknode_i10actiontypePhP3loc + 0xb751 _Z12sqlnp_smactnP8sqlnp_cbi + 0x0a3b _Z12sqlnp_parserP8sqlnp_cb + 0x0221 _Z10sqlnp_mainP12sqlnq_stringbP3locPP9sqlnq_qur + 0x08e4 _Z10sqlnn_cmplP8sqeAgentP11sqlrrstrings17sqlnn_compileModesP14sq lrr_cmpl_enviiPP9sqlnq_qur + 0x0b21 _Z10sqlnn_cmplP8sqeAgentP11sqlrrstrings17sqlnn_compileModesP14sq lrr_cmpl_env + 0x0021 _Z17sqlra_compile_varP8sqlrr_cbP14sqlra_cmpl_envPhitiiiiiP14SQLP _LOCK_INFOP16sqlra_cached_varPi + 0x0822 _Z14sqlra_find_varP8sqlrr_cbP17sqlra_cached_stmt13sqlra_stmt_idj jPhjthP14sqlra_cmpl_env15sqlra_fill_modePiiS8_iiiS8_P14SQLP_LOCK _INFOPP16sqlra_cached_varS8_b + 0x05f0 _Z13sqlra_get_varP8sqlrr_cbiibPbS1_ + 0x08a2 _Z21sqlri_ddl_get_sectionP8sqlrr_cb + 0x005c _Z16sqlri_ddl_commonP8sqlrr_cb + 0x0361 _Z8sqlriddlP8sqlrr_cb + 0x0027 _Z15sqlriSectInvokeP8sqlrr_cbP12sqlri_opparm + 0x01ad _Z23sqlrr_execute_immediateP8sqlrr_cbi + 0x04bd _Z14sqlrr_execimmdP14db2UCinterfaceP16db2UCprepareInfo + 0x0135 _Z19sqljs_ddm_excsqlimmP14db2UCinterfaceP13sqljDDMObject + 0x05ac _Z21sqljsParseRdbAccessedP13sqljsDrdaAsCbP13sqljDDMObjectP14db2U Cinterface + 0x03a6 _Z10sqljsParseP13sqljsDrdaAsCbP14db2UCinterfaceP8sqeAgentb + 0x0377 With this APAR, DB2 will instead return a proper error message on the CREATE PROCEDURE statement. For example, it will now return: SQL0120N Invalid use of an aggregate function or OLAP function. SQLSTATE=42903 | |
Problem-Zusammenfassung: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 Cancun Release 10.5.0.4 (also known as Fix * * Pack 4) or higher. * **************************************************************** | |
Local-Fix: | |
Modify the stored procedure to remove the aggregate function as an argument to the nested stored procedure. | |
verfügbare FixPacks: | |
DB2 Cancun Release 10.5.0.4 (also known as Fix Pack 4) for Linux, UNIX, and Windows | |
Lösung | |
Fixed in DB2 Cancun Release 10.5.0.4 (also known as Fix Pack 4) | |
Workaround | |
see Local Fix | |
Weitere Daten | |
Datum - Problem gemeldet : Datum - Problem geschlossen : Datum - der letzten Änderung: | 03.02.2014 06.10.2014 06.10.2014 |
Problem behoben ab folgender Versionen (IBM BugInfos) | |
Problem behoben lt. FixList in der Version | |
10.5.0.4 |