Troubleshooting
Problem
DB2 fails to delete archive logs with "ADM8509N Unable to delete the database logs" in the db2diag.log, but no errors are reported in Tivoli Storage Manager logs
Diagnosing The Problem
DB2diag.log shows repeated errors deleting archives, thus filling the filesystem. The error seen looks like this:
2015-07-02-10.48.04.451139-300 E107696660A362 LEVEL: Error
PID : 52166676 TID : 1 PROC : db2vend
INSTANCE: psfdb01 NODE : 000
EDUID : 1
FUNCTION: DB2 UDB, database utilities, sqluvDoQueryAndDelete, probe:2225
DATA #1 : TSM RC, PD_DB2_TYPE_TSM_RC, 4 bytes
TSM RC=0x000008FE=2302 -- see TSM API Reference for meaning.
.
2015-07-02-11.45.17.070482-300 E107942312A508 LEVEL: Error
PID : 49348712 TID : 10467 PROC : db2sysc 0
INSTANCE: psfdb01 NODE : 000 DB : FSPRD
APPHDL : 0-15707 APPID: *LOCAL.psfdb01.150702153002
AUTHID : PSFDB01
EDUID : 10467 EDUNAME: db2agent (FSPRD) 0
FUNCTION: DB2 UDB, database utilities, sqluhDeletionReport, probe:835
MESSAGE : ADM8509N Unable to delete the database logs "15294 - 15477" in log chain "12".
Resolving The Problem
An API service trace for the DB2 node reveals conflicting information; it appears that the 15294 log is seen getting deleted:
07/02/15 10:48:04.448 [52166676] [1] : dsmnextq.cpp (1271): apicuGetArchQryResp: owner >psfdb01< Name fs=>/FSPRD< hl=>/NODE0000< ll=>/C0000012_S0015294.LOG< id hi:0 lo:34310027
07/02/15 10:48:04.449 [52166676] [1] : dsmdel.cpp ( 364): dsmDeleteObj ENTRY: dsmHandle=1, delType: >dtArchive< objectID:>0 34310027<
07/02/15 10:48:04.449 [52166676] [1] : cumisc.cpp (1261): cuobjectDel: repository REPOS_ARCHIVE IDhi: 0, IDlo : 34310027
07/02/15 10:48:04.449 [52166676] [1] : session.cpp (2324): Address of buffer is 10273080
07/02/15 10:48:04.449 [52166676] [1] : session.cpp (1714): Send Verb: Length: 30 Code: 0000009A Type: ObjectDel
07/02/15 10:48:04.449 [52166676] [1] : commtcp.cpp (2248): TcpWrite: 30 bytes written of 30 requested.
07/02/15 10:48:04.449 [52166676] [1] : session.cpp (1751): Sent Verb: Length: 30 Code: 0000009A Type: ObjectDel ->
07/02/15 10:48:04.449 [52166676] [1] : dsmdel.cpp ( 477): dsmDeleteObj dsmHandle=1, txnListCount:>1<
07/02/15 10:48:04.449 [52166676] [1] : dsmdel.cpp ( 488): dsmDeleteObj EXIT: rc = >0<.
.
However, later in the trace, there is the 2302 return code:
07/02/15 10:48:04.451 [52166676] [1] : cutxn.cpp ( 478): cuEndTxnEnhanced: Received vote: 2, reason: 27, deferred vote: 1, deferred reason: 0
07/02/15 10:48:04.451 [52166676] [1] : dsmsend.cpp ( 721): cuEndTxn: rc = 0, reason code = 27
07/02/15 10:48:04.451 [52166676] [1] : senddata.cpp (4212): dsDestroyConfirmSettings(): Total cuConfirms issued: 0 .
07/02/15 10:48:04.451 [52166676] [1] : dsmsend.cpp ( 811): dsmEndTxn EXIT: rc = >2302<.
.
Return code 2302 only means DSM_RC_CHECK_REASON_CODE The dsmEndTxn vote is ABORT, so check the reason field
Reason code 27 means #define DSM_RS_ABORT_NOT_AUTHORIZED 27 The file space cannot be deleted because this node does not have permission to delete archived or backed up data.
Higher in the trace, we see why the node is failing to delete the archives:
07/02/15 10:30:21.162 [27131958] [1] : cucommon.cpp (3784): archDel: No, backDel: No, disasterBackDel: No
.
Updating the node to set ARCHDElete to YES will resolve the problem.
Product Synonym
TSM
Was this topic helpful?
Document Information
Modified date:
17 June 2018
UID
swg21963612