A fix is available
APAR status
Closed as program error.
Error description
Abend5C6-0BAD0002 occurred during a put to topic where we got a pageset full condition. The try to put the message to DLQ ends because the same page set is used and we recieved again page set full. The problem occurs when CSQIRREQ is invoked to backout as a result of the failure during MQPUT to a topic. CSQIRREQ is invoked to backout the nested unit of work due to the failure, and reads the last log records, 006CE151BF1D. This is a compensating log-record, due to a previous CSQIRREQ issued by CSQIMPU2 when it failed to allocate the necessary pages for the message. As a compensating log-record is being processed, CSQIRREQ sets LRCLRH->LRHLINK to 006CE151BEFB, which comes from LRHUNDO (set by CSQIUNDO when performing the backout requested previously by CSQIMPU2). CSQJR103 follows the log-records backwards from the current
Local fix
n/A
Problem summary
**************************************************************** * USERS AFFECTED: All users of WebSphere MQ for z/OS Version 7 * * Release 0 Modification 1 and Release 1 * * Modification 0. * **************************************************************** * PROBLEM DESCRIPTION: The queue manager abends with * * 5C6-0BAD0002 issued by CSQIRREQ. * * If the channel initiator is issuing the * * put, it will issue abend 5C6-00E7014F. * * The abend occurs following an attempt * * to put to a topic where the associated * * subscriber queues are on a page set * * that is almost full. * **************************************************************** * RECOMMENDATION: * **************************************************************** A message is being put to a topic. When the put to one of the subcriber queues fails with return code 2 reason 2192, the put is rolled back by invoking CSQIUNDO. The put failed after inserting the message body on its page, when requesting a spine-page for the queue, there is no more space left. This causes the MQPUT to be rolled back, and compensating log records are written to the log. When the put to the topic is being rolled back as a result of this (due to the persistent message delivery being set to all (durable) subscribers), CSQIRREQ is invoked, which will roll back the unit of work to a save point. The log is read backwards using LRHLINK, and when encountering a compensating log record from the MQPUT, the LRHUNDO value is copied into the LRHLINK value, and the next record is read. CSQIUNDO does not store an exact RBA in the LRHUNDO value (it stores the RBA of the compensated record minus 1), thus the next log read fails unexpectedly, causing the 0BAD0002 abend to be issued, which is propagated.
Problem conclusion
The code was changed to restore a correct LRHLINK value, allowing the roll back of the put to the topic to succeed. 010Y 100Y CSQIRREQ
Temporary fix
Comments
APAR Information
APAR number
PM85710
Reported component name
WMQ Z/OS V7
Reported component ID
5655R3600
Reported release
010
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2013-03-27
Closed date
2013-05-30
Last modified date
2013-08-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK94710 UK94711
Modules/Macros
CSQIRREQ
Fix information
Fixed component name
WMQ Z/OS V7
Fixed component ID
5655R3600
Applicable component levels
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
02 August 2013