DB2 - Problem description
| Problem IT05928 | Status: Closed |
SQL1655C, SQLSTATE=38030. SQLB_BADHDR "BAD PAGE HEADER", SQLBREADPAGE CALLED FROM SQLIFIXSMP, SQLBFIXPAGE, SQLBFIX | |
| product: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
| Problem description: | |
The following error could be returned by an insert/update/delete
statement accessing a table in a tablespace with non-reclaimable
storage which has had REORG INDEX(ES) with the RECLAIM EXTENTS
option run against it.
DB21034E The command was processed as an SQL statement because
it was not a valid Command Line Processor command. During SQL
processing it returned:
SQL1655C The operation could not be completed due to an error
accessing data on disk. SQLSTATE=58030
If this error isn't returned then the instance could crash. In
either case the following will be written to the db2diag.log:
MESSAGE : ZRC=0x87020036=-2029912010=SQLB_BADHDR "Bad Page
Header"
DIA8547C An error occurred in a database page header.
DATA #1 : String, 64 bytes
Error encountered trying to read a page - information follows :
DATA #2 : String, 23 bytes
Page verification error
DATA #3 : Page ID, PD_TYPE_SQLB_PAGE_ID, 4 bytes
0
DATA #4 : Object descriptor, PD_TYPE_SQLB_OBJECT_DESC, 104 bytes
Obj: {pool:82;obj:2062;type:1} Parent={82;2062}
lifeLSN: 000000003D5480B2
tid: 0 0 0
extentAnchor: 1274370
initEmpPages: 0
poolPage0: 1274372
poolflags: 0x 7122
objectState: 0x 80027
lastSMP: 0
pageSize: 4096
extentSize: 2
bufferPoolID: 1
partialHash: 151912530
objDescAttributes: 0
objDescEHLState: 0x07000001ceeab379
bufferPool: 0x07000001669ecf40
pdef: 0x07000001c288ad40
DATA #5 : Bitmask, 4 bytes
0x00000003
DATA #6 : Page header, PD_TYPE_SQLB_PAGE_HEAD, 48 bytes
pageHead: {tbspSeed:82;obj:65534;type:14} bphPPNum:0 bphOPNum:0
begoff: 48
datlen: 4048
revnum: 1280
pagelsn: 000000003C860058
flag: 2a
future32: 0
cbits1to31: 57f3b79f
cbits32to63: 90164b6
DATA #7 : Bufferpool globals, PD_TYPE_SQLB_GLOBALS, 1264 bytes
dbcb: 0x07800000039a0080
bpcb: 0x070000016505e360
ptbl: 0x070000016505e900
eduType: SQLB_EDU_AGENT
eduCB: 0x078000000658e2c0
qryData: 0x0000000000000000
qryDataSz: 0
qryDataPos: 0
contQryData: 0x0000000000000000
contQryDataSz: 0
contQryDataPos: 0
bglobals_flags: 10200
eduId: 19036
curPfQ: 4
curRemHateListCounter: 19292
debugInfo: 0x00000001660a35e0
pCurRecLsn: 0x0000000000000000
clnrCB: 0x0000000000000000
prefetchPriority: 1
agentPriorityWeight: 00
staticStr:
curRecTsp: 0
curRecPage: 0
numPFRequestsHeld: 0
memAccessCount:
m_bIsInitialized: true
m_iDisabled: 1
m_iAccessCount: 2
CALLSTCK: (Static functions may not be resolved correctly, as
they are resolved to the nearest symbol)
[0] 0x090000000F745210 pdLog + 0x2D0
[1]
0x0900000011D2874CsqlbLogReadAttemptFailure__FUiP16SQLB_OBJECT_D
ESCT1P9SQLB_PAGEibUlT1PcP12SQLB_GLOBALS + 0x36C
[2]
0x0900000011D437D4sqlb_verify_page__FP9SQLB_PAGEP16SQLB_OBJECT_D
ESCUiT3P12SQLB_GLOBALSPUl + 0xF34
[3] 0x0900000011D48C80 sqlbReadPage + 0xA40
[4] 0x0900000013CFA528 sqlbGetPageFromDisk__FP11SQLB_FIX_CBi
+0x1BA8
[5] 0x090000001231F260 sqlbfix__FP11SQLB_FIX_CB + 0x3FE0
[6] 0x0900000012DA733C sqlbFixPage__FP11SQLB_FIX_CBiUiT2
+0x27C
[7]
0x0900000012DAD400sqliFixSMP__FP11SQLB_FIX_CBP17SQLI_FRPGMAP_DES
CiUiT3 + 0x160
[8]
0x0900000012DAECC0sqliSearchMapsAndGetPage__FP7SQLI_CBUlT2PUiP11
SQLI_SMPLOCP19SQLI_INX_PAGE_CACHEP14SQLI_PAGE_DESC + 0x13E0
[9]
0x0900000012DB2688sqliGetPageBufferPool__FP7SQLI_CBPUiUiiP14SQLI
_PAGE_DESC + 0x748
[10]
0x090000001462E014sqligtpg__FP7SQLI_CBPUiUiiP14SQLI_PAGE_DESC +
0x1D4
[11]
0x090000001462E738sqliGetNewPageForSplit__FP7SQLI_CBP14SQLI_PAGE
_DESC + 0x378
[12]
0x0900000014630ECCsplitnode__FP7SQLI_CBP14SQLI_PAGE_DESCPUlP11SQ
LI_SAGLOBP8SQLD_KEYP12SQLI_KEYDATAP9SQLI_SLOTPUc + 0x76C
[13]
0x09000000146468A4addkeyToLeaf__FP7SQLI_CBP11SQLI_SAGLOBP9SQLI_S
LOT + 0x1224
[14]
0x090000001464BB64procLeaf2Add__FP7SQLI_CBP11SQLI_SAGLOBP9SQLI_S
LOTiP12SQLI_KEYDATA + 0x824
[15] 0x090000001464F004 sqlischa__FP7SQLI_CBP11SQLI_SAGLOBiUi+
0x1864
[16] 0x090000001464D17Cnext_level__FP7SQLI_CBP11SQLI_SAGLOBiUi
+ 0x1BC
[17] 0x090000001464EF58 sqlischa__FP7SQLI_CBP11SQLI_SAGLOBiUi+
0x17B8
[18] 0x090000001464D17Cnext_level__FP7SQLI_CBP11SQLI_SAGLOBiUi
+ 0x1BC
[19] 0x090000001464EF58 sqlischa__FP7SQLI_CBP11SQLI_SAGLOBiUi+
0x17B8
[20]
0x09000000125C59DCsqliaddk__FP8sqeAgentP9SQLD_IXCBP8SQLD_KEY12SQ
LI_KEYDATAP14SQLP_LOCK_INFOP8SQLP_LRBUlP10SQLI_IXPCRPPv + x137C
[21]
0x0900000014867A44sqldKeyInsert__FP13SQLD_DFM_WORKP16SQLD_TABLE_
CACHET2P13SQLD_TDATARECP15SQLD_TDATAREC32iUl + 0xC84
[22]
0x0900000014875D64sqldRowInsert__FP8sqeAgentUsT2UcUliPP10SQLD_VA
LUEP8SQLZ_RIDPPv +0x1984
[23]
0x0900000011CD6A8Csqlrinsr__FP8sqlrr_cbUsT2iT2PP10SQLD_VALUEQ3_1
0sqlri_iudo11t_iudoFlags17t_iudoFlagsKernelP8SQLZ_RIDPPv + 0x1CC
[24] 0x0900000019AF58B4 sqlriisr__FP8sqlrr_cb + 0x634
[25]
0x0900000010969AECsqlriExecThread__FP8sqlrr_cbP12sqlri_opparm +
0x7EC
[26]
0x090000001096C350sqlriSectInvoke__FP8sqlrr_cbP12sqlri_opparm +
0x10F0
[27] 0x0900000019A141F0 sqlrr_dss_router__FP8sqlrr_cb + 0xB90
[28]
0x0900000019A182C4sqlrr_subagent_router__FP8sqeAgentP12SQLE_DB2R
A_T + 0x1D44
[29] 0x0900000010A79288sqleSubRequestRouter__FP8sqeAgentPUiPUl
+ 0xEA8
[30] 0x0900000010A95B48 sqleProcessSubRequest__FP8sqeAgent
+0x328
[31] 0x090000000FAF7C7C RunEDU__8sqeAgentFv + 0x37C
[32] 0x090000000FAB33BC EDUDriver__9sqzEDUObjFv + 0x23C
[33] 0x090000000FAB371C sqlzRunEDU__FPcUi + 0x3C
[34] 0x090000000F90F7B4 sqloEDUEntry + 0x7B4
[35] 0x09000000004F7D30 _pthread_body + 0xF0
[36] 0xFFFFFFFFFFFFFFFC ?unknown + 0xFFFFFFFF
Note that Page ID in the output above is 0:
DATA #3 : Page ID, PD_TYPE_SQLB_PAGE_ID, 4 bytes
0
This will be followed by:
DATA #1 : Fix control block, PD_TYPE_SQLB_FIX_CB, 208 bytes
accessMethod: SQLB_POOL_RELATIVE
fixMode: 3 SQLBX | SQLBOLD
buffptr: 0x0000000000000000
bpdPtr: 0x0000000000000000
pageLsnOnXLatch: 000000003CF67350
dmDebugHdl: 2
objectPageNum: 3969
empDiskPageNum: 4294967295
unfixFlags: 1000000
dirtyState: SQLBCLEAN
fixInfoFlags: 1
regEDUid: 0
Pagekey: {pool:82;obj:2062;type:1} PPNum:0
Obj: {pool:82;obj:2062;type:1} Parent={82;2062}
which again shows PPNum:0.
If these are seen then the issue could be due to this APAR. | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All users that have upgrade their database from DB2 version * * 9.5 or earlier. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 version 10.1.0.5. * **************************************************************** | |
| Local Fix: | |
If the database instance has crashed then the problem will be resolved by bringing the database back up and performing crash recovery. If the database instance has not crashed then the database from which the error was received should be deactivated and reactivated. For pureScale the database must be deactivated on all pureScale members. For DPF instances the database must be deactivated only on the node on which the error was received. Upon reactivation the error will be resolved. To avoid further occurrences, for any table that resides in a tablspace with non-reclaimable storage, the database must be deactivated and reactivated between running an INDEX REORG with the REBUILD option and a REORG INDEX(ES) with the RECLAIM EXTENTS option against the table. The database must also be deactivated and reactivated between the creation of the first index on the table and running a REORG INDEX(ES) with the RECLAIM EXENTS option against the table. The problem will not occur if REORG INDEX(ES) with the RECLAIM EXTENTS option is not run against tables in tablespaces with non-reclaimable storage. | |
| Solution | |
The problem is first fixed in DB2 version 10.1.0.5. | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 04.12.2014 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 |
|