home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Neueste VersionenFixList
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
Haben Sie Probleme? - Kontaktieren Sie uns.
Kostenlos registrieren anmeldung-x26
Kontaktformular kontakt-x26

DB2 - Problembeschreibung

Problem IC82898 Status: Geschlossen

HADR STANDBY may run out of receive buffer space, during intensive
insert/update XML dependant operations on PRIMARY.

Produkt:
DB2 FOR LUW / DB2FORLUW / 950 - DB2
Problembeschreibung:
As an effect you can observe high utilization of HADR receive 
buffer. In output of command: 
 
db2pd -d <DB_NAME> -hadr 
 
receive buffer is close to 100%: StandByRcvBufUsed: 100% 
 
Cause of the issue, is that XML log records does not setup 
correct log record blocking level, and as a consequence database 
wide blocking level is used what causes congestion on HADR 
STANDBY. 
 
During congestion redo master is either processing a database 
blocking log record or waiting for redo workers to complete the 
work in queues in order to process a database wide blocking log 
record. Problem can be further identified by analysis of stacks 
on 
STANDBY side.  After issuing command: 
 
db2pd -stack all; 
 
you can see one of 2 situations in stacks created: 
 
1. redo master is waiting for redo workers to finish the work 
left in the queues so that it (redo master) can proceed to 
replay the database wide blocking log records. 
 
Stack of db2redom(DB_NAME) : 
 
0x09000000000EF1F8 thread_wait + 0x98 
0x090000000A53A7A4 sqloWaitEDUWaitPost + 0x0 
0x090000000858BF90 
sqlprWaitDuringPRec__FP8sqeAgentP16SQLO_EDUWAITPOST + 0xD8 
0x09000000098B52F4 
sqlpPRecReadLog__FP8sqeAgentP8SQLP_ACBP9SQLP_DBCB + 0x1B54 
... 
 
Stack of 1 from redo workers pool db2redow(DB_NAME) stack: 
 
0x090000000002D538 pread64 + 0x38 
0x090000000A527350 sqloReadBlocks - 0x94 
0x090000000A5274DC 
sqlbReadBlocks__FP16SqlbOpenFileInfoPvlUlUiPUlP12SQLB_GLOBALS + 
0x28 
0x090000000A52AD80 sqlbReadPage + 0x31C 
0x090000000A5264FC 
.sqlbGetPageFromDisk__FP11SQLB_FIX_CBi_fdprpro_clone_135 + 0x330 
... 
 
or: 
 
0x090000000002A358 pwrite64 + 0x38 
0x090000000A53385C sqloseekwrite64 + 0xF0 
0x090000000A5336C4 sqloWriteBlocks + 0x9C 
0x090000000A532F68 
sqlbWriteBlocks__FP16SqlbOpenFileInfoPvlUlUiPUlP12SQLB_GLOBALS + 
0x38 
0x0900000008D4EEAC 
@71@sqlbDMSWriteContainerData__FP20SQLB_DIRECT_WRITE_CBP13SQLB_M 
AP_INFOP16SqlbOpenFileInfoPcP12SQLB_GLOBALS + 0x154 
... 
 
 
Stack of rest of the redo workers in pool: 
 
0x09000000000EF1F8 thread_wait + 0x98 
0x090000000A53A7A4 sqloWaitEDUWaitPost + 0x0 
0x09000000098B1658 sqlprFindQueue__FP9SQLP_DBCBUlT2PUl + 0x620 
0x09000000098B0F88 
sqlpPRecProcLog__FP8sqeAgentP8SQLP_ACBP9SQLP_DBCB + 0xC50 
... 
 
or: 
 
0x0900000000BBF1F0 _p_nsleep + 0x10 
0x090000000002B644 nsleep + 0xE4 
0x0900000000144288 nanosleep + 0x188 
0x09000000021DFDA0 ossSleep + 0x80 
0x090000000A6D777C sqlorest + 0x40 
0x09000000098B1510 sqlprFindQueue__FP9SQLP_DBCBUlT2PUl + 0x4D8 
0x09000000098B0F88 
sqlpPRecProcLog__FP8sqeAgentP8SQLP_ACBP9SQLP_DBCB + 0xC50 
... 
 
 
 
 
2. redo master is processing a database wide blocking log record 
and so all redo workers queues are empty (hence no work for redo 
worker). 
 
Stack of db2redom(DB_NAME) : 
 
0x090000000002D538 pread64 + 0x38 
0x090000000A527350 sqloReadBlocks - 0x94 
0x090000000A5274DC 
sqlbReadBlocks__FP16SqlbOpenFileInfoPvlUlUiPUlP12SQLB_GLOBALS + 
0x28 
0x090000000A52AD80 sqlbReadPage + 0x31C 
0x090000000A5264FC 
.sqlbGetPageFromDisk__FP11SQLB_FIX_CBi_fdprpro_clone_135 + 0x330 
 
 
Stack of db2redow(DB_NAME) EDUs: 
 
0x09000000000EF1F8 thread_wait + 0x98 
0x090000000A53A7A4 sqloWaitEDUWaitPost + 0x0 
0x09000000098B1658 sqlprFindQueue__FP9SQLP_DBCBUlT2PUl + 0x620 
0x09000000098B0F88 
sqlpPRecProcLog__FP8sqeAgentP8SQLP_ACBP9SQLP_DBCB + 0xC50 
... 
 
or: 
 
0x0900000000BBF1F0 _p_nsleep + 0x10 
0x090000000002B644 nsleep + 0xE4 
0x0900000000144288 nanosleep + 0x188 
0x09000000021DFDA0 ossSleep + 0x80 
0x090000000A6D777C sqlorest + 0x40 
0x09000000098B1510 sqlprFindQueue__FP9SQLP_DBCBUlT2PUl + 0x4D8 
0x09000000098B0F88 
sqlpPRecProcLog__FP8sqeAgentP8SQLP_ACBP9SQLP_DBCB + 0xC50 
...
Problem-Zusammenfassung:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 version 9.5 fixpack 10                        * 
****************************************************************
Local-Fix:
No workaround available
Lösung
Issue was first fixed in DB2 version 9.5 fixpack 10
Workaround
keiner bekannt / siehe Local-Fix
Bug-Verfolgung
Vorgänger  : APAR is sysrouted TO one or more of the following: IC83953 
Nachfolger : 
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
25.04.2012
20.10.2012
09.12.2012
Problem behoben ab folgender Versionen (IBM BugInfos)
9.5.FP10
Problem behoben lt. FixList in der Version
9.5.0.10 FixList