A fix is available
APAR status
Closed as program error.
Error description
A successful backup is performed using the IBM Spectrum Protect API client. The backup data is stored in a LZ4-compatible container storage pool on the IBM Spectrum Protect server. Restoring the same data using the IBM Spectrum Protect API client can fail. No messages or indications are found on the IBM Spectrum Protect client or server log files on the cause of the failure. The only messages about the failure are generated by the software using the IBM Spectrum Protect API client. The restore fails because one of the objects being restored contains LZ4 compressed and uncompressed chunks in the LZ4-compatible container storage pool. LZ4 compression is a faster and more efficient compression method that the client uses when a client-deduplicated object is sent to an LZ4-compatible container storage pool on the IBM Spectrum Protect server. The IBM Spectrum Protect server must be at version 7.1.5 or later, and must use LZ4-compatible container storage pools. Client-side LZ4 compression is used only when client-side data deduplication is enabled. An IBM Spectrum Protect API trace with trace flag "service" shows a zero value for the "Server value MD5" field. For example: [DATE] [TIME] [pid] [1] : dsmget.cpp (1564): End-to-end MD5: E0A64503F1462A676200D9B8AE57BD6A Server value MD5: 00000000000000000000000000000000 The same trace file shows a mix of uncompressed (compressed : 0x0) and compressed (compressed : 0x2) chunks are being restored for one object being restored. For example: [DATE] [TIME] [pid] [1] : session.cpp (2112): Recv Verb: [DATE] [TIME] [pid] [1] : session.cpp (2113): Length: 59 Code: 00000600 Type: <- DistDedupChunk [DATE] [TIME] [pid] [1] : dsmget.cpp (2146): Contents of verb (0x600) DistDedupChunk, length: 59: version : 0x2 dataOffset : 39 chunkLength : 210275 SHAvalue : 714E0560 082476AC F3001DF5 54E4B8DA E8591644 compressed : 0x2 compressedLength : 0 sendData : 0x1 found : 00 cipherType : 00 cryptKey : cryptHash : [DATE] [TIME] [pid] [1] : dsmget.cpp (2161): DistDedupChunkVerb: getInfoP->actSize 0, getInfoP->curPos 0, numBytes 51869 One scenario where this might happen is as follows: 1. LZ4 compression is not used on the IBM Spectrum Protect API client. Successful backups are performed using the IBM Spectrum Protect API client. 2. Later LZ4 compression is enabled on the IBM Spectrum Protect API client. But because of deduplication the newly ingested object can still have the possibility to reference the old uncompressed chunks. 3. So when retrieving the object, you can see both LZ4 compressed and uncompressed chunks are restored for the same object. Below is some information on the issue when using IBM Spectrum Protect for Databases - Data Protection for Oracle. A successful backup is performed to a directory-container pool. For example: RMAN> backup datafile [data file]; ... channel ORA_SBT_TAPE_2: finished piece 1 at [DATE] piece handle=[handle] tag=[TAG] comment=API Version 2.0,MMS Version 8.1.9.1 channel ORA_SBT_TAPE_2: backup set complete, elapsed time: 00:36:06 channel ORA_SBT_TAPE_1: finished piece 1 at [DATE] piece handle=[handle] tag=[TAG] comment=API Version 2.0,MMS Version 8.1.9.1 channel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:38:26 Finished backup at [DATE] Starting Control File and SPFILE Autobackup at [DATE] piece handle=[handle] comment=API Version 2.0,MMS Version 8.1.9.1 Finished Control File and SPFILE Autobackup at [DATE] Restoring that data fails. For example: RMAN> restore validate datafile [data file]; ... restore not complete Restore did not complete for some archived logs from backup piece <piece> (piecenum=1, pieces_done=1, done=FALSE, failover=FALSE) Please check alert log for additional information. The Oracle Recovery Manager (RMAN) message "Restore did not complete for some archived logs from backup piece [backup piece]" is the only indication the restore failed. IBM Spectrum Protect Versions Affected: IBM Spectrum Protect API client 7.1.0 or later on all supported platforms and IBM Spectrum Protect API client 8.1.0 or later on all supported platforms Additional Keywords: TS005856819 TDP API compressed uncompressed dedup
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: * * IBM Spectrum Protect API client versions 7.1 and 8.1 on all * * platforms * **************************************************************** * PROBLEM DESCRIPTION: * * see ERROR DESCRIPTION * **************************************************************** * RECOMMENDATION: * * Apply fixing level when available. This problem is projected * * to be fixed in level 8.1.13. Note that this is subject to * * change at the discretion of IBM. * **************************************************************** *
Problem conclusion
API will restore client-side deduplicated data without fails.
Temporary fix
Comments
APAR Information
APAR number
IT38433
Reported component name
TSM CLIENT
Reported component ID
5698ISMCL
Reported release
81S
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2021-09-21
Closed date
2021-11-17
Last modified date
2021-11-17
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
libApi
Fix information
Fixed component name
TSM CLIENT
Fixed component ID
5698ISMCL
Applicable component levels
R71L PSY
UP
R71A PSY
UP
R71H PSY
UP
R71M PSY
UP
R71S PSY
UP
R71W PSY
UP
R81A PSY
UP
R81H PSY
UP
R81L PSY
UP
R81M PSY
UP
R81S PSY
UP
R81W PSY
UP
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGSG7","label":"Tivoli Storage Manager"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"81S","Line of Business":{"code":"LOB26","label":"Storage"}}]
Document Information
Modified date:
17 December 2021