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

ATS Daemon may cause a stack overflow due to recursive calls and subsequent
SEGV if an error condition is encountered

product:
DB2 FOR LUW / DB2FORLUW / A10 - DB2
Problem description:
Starting in v97fp6 the new MON interface 
MON_GET_APPLICATION_HANDLE was 
used in the function createStatusRecord used by the ATS Daemon. 
 
If customer has not run db2updv97 by any chance, an error like: 
 
2013-02-14-00.00.00.661847+000 E477786A572        LEVEL: Error 
 PID     : 7929988              TID  : 1046        PROC : db2acd 
0 
 INSTANCE: db2pe1               NODE : 000 
 APPID   : *LOCAL.db2pe1.130214000000 
 EDUID   : 1046                 EDUNAME: db2acd 0 
 FUNCTION: DB2 UDB, Administrative Task Scheduler, 
AtsTask::createStatusRecord, probe:300 
 MESSAGE : ZRC=0xFFFFFE48=-440 
 DATA #1 : <preformatted> 
 [IBM][CLI Driver][DB2/AIX64] SQL0440N  No authorized routine 
named "MON_GET_APPLICATION_HANDLE" of type "FUNCTION" having 
compatible arguments was found.  SQLSTATE=42884 
 
will keep appearing in the db2diag.log and then db2acd pid will 
be SEGV and will do it in tight loop for some time holding on to 
the db2diag.log file lock ( blocking other threads from writing 
to the db2diag.log thus possibly slowing the performance of the 
system ) before it gets out and db2wdog detects it and restarts 
the db2acd process. The db2wdog will put in this message in the 
db2diag.log 
 
2013-02-14-00.13.03.852119+000 E825024A398        LEVEL: Error 
 PID     : 18677912             TID  : 258         PROC : 
db2wdog 0 
 INSTANCE: db2pe1               NODE : 000 
 EDUID   : 258                  EDUNAME: db2wdog 0 
 FUNCTION: DB2 UDB, base sys utilities, sqleChildCrashHandler, 
probe:5463 
 DATA #1 : <preformatted> 
 A non-EDU child crashed Process id: 7929988, OSS term code: 
0x101, signal: 11 
 
If a procstack of the db2acd is collected during this time frame 
the stack will look like: 
 
0x090000000dda059c  sqloOpenTrapLog(??, ??, ??) + 0x3c 
<signal> 
0x09000000001eff7c  _doprnt(??, ??, ??) + 0x7c 
0x090000000d9d3280  PDLogBuffer::sprintf(const 
char*,...)(0x9001000a183a478, 0x90000000e8740d0, 0x1106cf69d) + 
0xd4 
0x090000000d970140 
@97@formatPDLogHeader.fdpr.chunk.1(PDLogFacility&,PD_CONTEXT&,un 
signed long,unsigned int,unsigned int,unsigned long)(??, ??, ??, 
??, ??, ??) + 0x1c 
0x090000000dc523ec  @97@pdLogInternal.fdpr.chunk.10(unsigned 
long,unsigned int,unsigned long,unsigned int,unsigned 
long,unsigned long,unsigned long,unsigned long,void*,unsigned 
long,bool,char**)(0x2, 0x1dd000241dd00024, 0xfffffffffffffe48, 
0x0, 0x0, 0x12c, 0x2, 0x1) + 0x1d0 
0x090000000d9c7c1c  pdLogInternal(unsigned long,unsigned 
int,unsigned long,unsigned int,unsigned long,unsigned 
long,unsigned long,unsigned long,void*,unsigned 
long,bool,char**)(??, ??, ??, ??, ??, ??, ??, ??) + 0xa4 
0x090000000d972a64  pdLogPrintf.fdpr.chunk.1(0x2, 
0x1dd000241dd00024, 0xfffffffffffffe48, 0x12c, 0x2, 
0x90000000f58c234, 0x1106cfeb8, 0x1) + 0xd4 
0x090000000f4fcf50  atsLogCLIError(short,int,unsigned 
int,unsigned long,unsigned long)(0x3000000000003, 
0x2026000020260, 0xfffffffdfffffffd, 0x5d00000000005d, 
0x5d00000000000b) + 0x270 
0x090000000f507ee0 
AtsTask::createStatusRecord(AtsTimeStamp*)(??, ??) + 0x100 
0x090000000f5097e8 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025e00020 
25e, 0x300000003) + 0x5e8 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025d00020 
25d, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025c00020 
25c, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025b00020 
25b, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025a00020 
25a, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025900020 
259, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025800020 
258, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025700020 
257, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025600020 
256, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025500020 
255, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025400020 
254, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025300020 
253, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025200020 
252, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025100020 
251, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2025000020 
250, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2024f00020 
24f, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2024e00020 
24e, 0x300000003) + 0x5fc 
.. 
.. 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000900020 
009, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000800020 
008, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000700020 
007, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000600020 
006, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000500020 
005, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000400020 
004, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000300020 
003, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000100020 
001, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x2000200020 
002, 0x300000003) + 0x5fc 
0x090000000f5097fc 
AtsTask::updateStatusRecordAndCommit(AtsTaskStatus)(0x1106fd5c8, 
0x300000003) + 0x5fc 
0x090000000f506300  AtsTask::run()(??) + 0x4a0 
0x090000000f500a68  AtsThread::entryPoint(void*)(??) + 0x48 
 
Side effects of this issue: 
----------------------------- 
A potential slowdown can happen, if it so happens that during 
the same time other threads who are doing legitimate work also 
want to write something to db2diag.log. 
 
Verification ( if its the issue ): 
------------------------------------- 
1) Run db2 "select application_handle, application_name, 
application_id  from 
table(mon_get_connection(mon_get_application_handle(),-1)) as 
conn" . 
 
If it returns an error, use the workaround provided below to 
resolve the issue.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 v10.1 FP4                                     * 
****************************************************************
Local Fix:
1) Run db2updv97 -d <dbname> -a OR 
2) db2diag -A ( to remove the file lock on db2diag.log ) 
 
Recommendation: Run db2updv97 -d <dbname> -a for a permanent 
resolution.
available fix packs:
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 6 for Linux, UNIX, and Windows

Solution
Fixed in DB2 v10.1 FP4
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
08.10.2013
02.06.2014
02.06.2014
Problem solved at the following versions (IBM BugInfos)
Problem solved according to the fixlist(s) of the following version(s)
10.1.0.4 FixList