Direct links to fixes
8.1.6.000-IBM-SPSRV-AIX
8.1.6.000-IBM-SPSRV-Linuxppc64le
8.1.6.000-IBM-SPSRV-Linuxs390x
8.1.6.000-IBM-SPSRV-Linuxx86_64
8.1.6.000-IBM-SPSRV-WindowsX64
8.1.6.000-IBM-SPOC-AIX
8.1.6.000-IBM-SPOC-LinuxPPC64le
8.1.6.000-IBM-SPOC-Linuxs390x
8.1.6.000-IBM-SPOC-Linuxx86_64
8.1.6.000-IBM-SPOC-WindowsX64
8.1.6.000-IBM-SPCMS-Linuxx86_64
8.1.6.000-IBM-SPCMS-WindowsI32
8.1.6.000-IBM-SPCMS-WindowsX64
8.1.6.100-IBM-SPSRV-Linuxppc64le
8.1.6.100-IBM-SPSRV-AIX
8.1.6.100-IBM-SPSRV-Linuxs390x
8.1.6.100-IBM-SPSRV-Linuxx86_64
8.1.6.100-IBM-SPSRV-WindowsX64
IBM Spectrum Protect Server V8.1 Fix Pack 6 (V8.1.6) Downloads
IBM Spectrum Protect Server V8.1.6.X interim fix downloads
APAR status
Closed as program error.
Error description
The IBM Spectrum Protect server can crash if there are multiple threads using the same transaction to fetch data from different containers. The core dump created by the server crash running on Linux shows the following call stack : ========== #0 0x00007ffff33811f7 in raise () from /lib64/libc.so.6 #1 0x00007ffff33828e8 in abort () from /lib64/libc.so.6 #2 0x00007fff484070df in masterSynchSignalHandler () from /opt/tivoli/tsm/server/bin/../../jre/lib/amd64/compressedrefs/li bj9prt29.so #3 <signal handler called> #4 0x00007ffff76affab in pthread_cond_signal@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #5 0x0000000001207f95 in pkSignalCondition (condP=<optimized out>) at pkmon.c:1280 #6 0x00000000010dc362 in AbortLockWaiter (txnP=0x7ffb70021638, txnSeqNo=..., file=<optimized out>, line=<optimized out>) at tmlock.c:3666 #7 0x00000000010dd5ce in tmLockTracked (file=0x158d65b "sdcntr.c", lineNum=3956, txnId=0x7ffb70021638, type=20001, nameSpace=14, key=0x7ffc90066fd5 '0' <repeats 12 times>, "311b.dcf", keyLen=20, mode=3 '\003', condition=UnconditionalLock) at tmlock.c:829 #8 0x0000000000e32aea in SdLockContainerTracked (file=0x158d65b "sdcntr.c", lineNum=3956, txnId=0x7ffb70021638, poolId=14, cntrName=0x7ffc90066fd5 '0' <repeats 12 times>, "311b.dcf", lockMode=<optimized out>) at sdutil.c:5543 #9 0x0000000000e33146 in SdLockCntrDescTracked (file=0x158d65b "sdcntr.c", lineNum=3956, txnId=0x7ffb70021638, cntrP=0x7ffc900570f8, lockMode=3 '\003', tryLock=False, ContainerMode=SdContainerModeRead) at sdutil.c:5407 #10 0x0000000000d51183 in SdOpenContainer (txnId=0x7ffb70021638, msgList=0x7fff001210f8, cntrP=0x7ffc900570f8, cntrMode=SdContainerModeRead, minSize=0) at sdcntr.c:3956 #11 0x0000000000e08cc1 in SdRtrvChunkForTape (ctlP=0x7ffd9437f618, readBatchP=0x7ffc1c157e68, chunkP=0x7ffc8608fd70, bufP=0x7ffb67ffd000 "CHUNKHDR") at sdrtrv.c:3554 #12 0x0000000000de2f63 in LocalProtectReadCntr (argP=0x7ffd9437f618, workP=0x7ffc1c157e68) at sdrepl.c:11339 #13 0x000000000117cb4f in PcConsumerThread (argP=<optimized out>) at prodcons.c:614 #14 0x00000000012063a4 in StartThread (startInfoP=0x0) at pkthread.c:4016 #15 0x00007ffff76abe25 in start_thread () from /lib64/libpthread.so.0 #16 0x00007ffff344434d in clone () from /lib64/libc.so.6 ========= A server trace "lock sdlock sdrepld" shows the following messages : ===== 12:02:29.857 [62158][tmlock.c][825][tmLockTracked]:Setting txn mustAbort=True for txnP 0x7ffd201374a8 12:02:29.858 [62158][tmlock.c][3591][AbortLockWaiter]:Attempting abort of txnP 0x7ffd201374a8 called from tmlock.c(829). 12:02:29.858 [62157][tmlock.c][2555][WaitForLock]:RC 0 from removal of resource waiter txnId 0x7ffd201374a8 12:02:29.859 [62158][tmlock.c][2555][WaitForLock]:RC 0 from removal of resource waiter txnId 0x7ffd201374a8 12:02:29.860 [62157][tmlock.c][825][tmLockTracked]:Setting txn mustAbort=True for txnP 0x7ffd201374a8 12:02:29.860 [62157][tmlock.c][3591][AbortLockWaiter]:Attempting abort of txnP 0x7ffd201374a8 called from tmlock.c(829). 12:02:29.858 [62157][sdrepl.c][11324][LocalProtectReadCntr]:Begin read for chunk -1400104814509624525 on readBatchP 0x7ffd1407cc98 into readBufferP 0x7ffc0eb67f18 on ctlP 0x7ffc0e76a2b8 12:02:29.858 [62158][sdrepl.c][11324][LocalProtectReadCntr]:Begin read for chunk -567355448177370944 on readBatchP 0x7ffd1698d2a8 into readBufferP 0x7ffc0eb67ef0 on ctlP 0x7ffc0e76a2b8 ======= IBM Spectrum Protect Versions Affected: IBM Spectrum Protect server v7.1.3 and above on all platforms. IBM Spectrum Protect server v8.1.0 and above on all platforms. Initial Impact: Medium Additional Keywords: TSM Tivoli Storage Manager crash container
Local fix
Add the following option in the dsmserv.opt file of the server instance : LocalProtTapeReadCons 1 and recycle the server to allow the added option to take effect.
Problem summary
**************************************************************** * USERS AFFECTED: * * All IBM Spectrum Protect server users. * **************************************************************** * PROBLEM DESCRIPTION: * * See ERROR DESCRIPTION. * **************************************************************** * RECOMMENDATION: * * Apply fixing level when available. This problem is currently * * projected to be fixed in level 8.1.6. Note that this is * * subject to change at the discretion of IBM. * ****************************************************************
Problem conclusion
This problem was fixed. Affected platforms for reported release: AIX, Linux, and Windows. Platforms fixed: AIX, Linux, and Windows.
Temporary fix
Comments
APAR Information
APAR number
IT25518
Reported component name
TSM SERVER
Reported component ID
5698ISMSV
Reported release
81L
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-07-03
Closed date
2018-07-16
Last modified date
2018-07-16
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
TSM SERVER
Fixed component ID
5698ISMSV
Applicable component levels
Document Information
Modified date:
06 September 2023