DB2 - Problem description
Problem IC75260 | Status: Closed |
HANG with DB2EVMTI DEADLATCH ON SQLO_LT_SQM_EVMON_MGR__EM_LIST_LATCH | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
This APAR describes a deadlatch situation with the deadlock event monitor (DB2EVMTI). 1) DB2EVMTI is trying to log deadlock events to its target tables and finds that the tables are already locked. 2) This lock situation triggers another deadlock and the deadlock event monitor while trying to generate the new deadlock event enters into a deadlatch situation with the deadlock detector (DB2DLOCK). The latch that is been waited on is SQLO_LT_SQM_EVMON_MGR__EM_LIST_LATCH. As the db2evmti is holding also SQLO_LT_sqeLocalDatabase__dblatch, new connections will be not possible and we will have the system hung. Stack for db2evmti 00002B7C23CA4F7F ossDumpStackTraceEx + 0x01f7 00002B7C23CA0ABA _ZN11OSSTrapFile6dumpExEmiP7siginfoPvm + 0x00b4 00002B7C23CA0B81 _ZN11OSSTrapFile4dumpEmiP7siginfoPv + 0x0009 00002B7C20216103 sqlo_trce + 0x03f3 00002B7C2025650F sqloDumpDiagInfoHandler + 0x00dd 000000364280EB10 __invoke_dynamic_linker__ + 0x1280 00000036420BAA27 __sched_yield + 0x0007 00002B7C1EFA5A3D sqloSpinLockConflict + 0x015d 00002B7C20DDC701 _Z12sqlxp_errmsgP8sqlxp_cbhhijP5Token + 0x000b 00002B7C1F93E0BF _ZN13sqm_evmon_mgr17gen_en_dlock_connEP14sqeApplicationPPc + 0x008b 00002B7C1F928030 _ZN15sqm_dlconn_list17gen_dlconn_eventsEPK8sqeAgentP8SQLP_LRB + 0x0812 00002B7C1F0086D2 _Z8sqlplfndP8sqeAgentP14SQLP_LOCK_INFOP8SQLP_LCBP9SQLP_LHSHP15SQ LP_LTRN_CHAINP8SQLP_LRBSA_SA_P8SQLP_AWBbb + 0x0a02 00002B7C20DF7491 _Z7sqlplrqP8sqeAgentP14SQLP_LOCK_INFO + 0x1c71 00002B7C20DB5366 _Z13sqldLockTableP8sqeAgentP14SQLP_LOCK_INFOjti + 0x00d2 00002B7C1ECB342A _Z24sqldGetTableCacheAndLockP8sqeAgentiitiiimiP14SQLP_LOCK_INFOP P16SQLD_TABLE_CACHE + 0x01e4 00002B7C1EC9060E _Z13sqldRowInsertP8sqeAgenttthmiPP10SQLD_VALUEP13SQLD_TDATARECP8 SQLZ_RID + 0x031c 00002B7C1F0CB965 _Z8sqlrinsrP8sqlrr_cbttitPP10SQLD_VALUEmP8SQLZ_RID + 0x0069 00002B7C1F93344F _ZN17sqm_evmon_ttarget10write_dataEPcjh + 0x190d 00002B7C1F93AD2E _ZN14sqmEvmonBuffer10write_dataEP16sqm_evmon_target + 0x00e4 00002B7C1EDDD76F _ZN14sqmEvmonWriter11evmonWriterEv + 0x061b 00002B7C1ECD47C0 _Z26sqleIndCoordProcessRequestP8sqeAgent + 0x00e8 00002B7C1ECE1F5F _ZN8sqeAgent6RunEDUEv + 0x04c9 00002B7C1F1E6BF1 _ZN9sqzEDUObj9EDUDriverEv + 0x006d 00002B7C1F1E6B81 _Z10sqlzRunEDUPcj + 0x0009 00002B7C1EFD0C9A sqloEDUEntry + 0x02ea 000000364280673D pthread_cond_wait@@GLIBC_2.3.2 + 0x020d 00000036420D3D1D clone + 0x006d Waiting on latch type: (SQLO_LT_sqm_evmon_mgr__em_list_latch) - Address: (0x20069dcd0), Line: 630, File: sqlmemgr.C Stack for db2dlock 00002B7C23CA4F7F ossDumpStackTraceEx + 0x01f7 00002B7C23CA0ABA _ZN11OSSTrapFile6dumpExEmiP7siginfoPvm + 0x00b4 00002B7C23CA0B81 _ZN11OSSTrapFile4dumpEmiP7siginfoPv + 0x0009 00002B7C20216103 sqlo_trce + 0x03f3 00002B7C2025650F sqloDumpDiagInfoHandler + 0x00dd 000000364280EB10 address: 0x000000364280EB10 ; dladdress: 0x0000003642800000 ; offset in lib: 0x000000000000EB10 ; 00000036420D517A semtimedop + 0x000a 00002B7C1EF89EE5 sqloWaitEDUWaitPost + 0x01ad 00002B7C1F93A59A _ZN17sqm_evmon_ostream10write_dataEPKcjb + 0x01ce 00002B7C1F9396C6 _ZN14sqmEvmonWriter10sendStreamEPPvbS0_ + 0x054a 00002B7C1F942FA6 _ZN13sqm_evmon_mgr9sendEventEPPcP17sqm_evmon_id_list + 0x00c2 00002B7C1F93DFDB _ZN13sqm_evmon_mgr13gen_dlock_evtEPPc + 0x00d1 00002B7C20262F9C _Z29sqlplReportLocalDeadlockEventP8SQLP_LCBjjP9SQLP_LHSH + 0x05ae 00002B7C20261D66 _Z17sqlpKillIfWaitingP9SQLP_DBCBP8SQLP_LCBjiiiPiP12sqm_dlock_idi jii + 0x0918 Holding Latch type: (SQLO_LT_sqm_evmon_mgr__em_list_latch) - | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * This APAR will collect diagnostic info regarding the * * deadlock * * participants in a similar scenario. In a deadlock scenario * * if * * one of the participants is the deadlock event monitor * * itself, * * DB2 will rollback the thread without collecting any * * information in the event monitor tables, but the db2diag.log * * will have information about the event.The information that * * is logged when an event monitor is involved as one of the * * participants in a deadlock is:"The deadlock detector has * * detected a deadlock with an EventMonitor agent as a * * participant. Information about this event will not be sent * * to * * the Event Monitor. Some details are provided below"These * * messages are being logged at WARNING level indb2diag.log and * * will be followed by information on the holder and waiter of * * the lock for deadlocks in which event monitor is found as * * one * * of the participants. * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 Version 9.7 and Fix Pack 5 * **************************************************************** | |
Local Fix: | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows | |
Solution | |
Problem was first fixed in DB2 Version 9.7 and Fick Pack 5 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 24.03.2011 09.12.2011 09.12.2011 |
Problem solved at the following versions (IBM BugInfos) | |
9.7. | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.5 |