A fix is available
APAR status
Closed as program error.
Error description
After APPLY of PK61313/UK34094/UK34095, users can receive MSGDSQ20855 for a write error to the spill data set. Users can also receive MSGDSQ60211 with or without PK61313 if the spill data set is allocated to multiple volumes.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All QMF for TSO/CICS V810 and V910 users. * **************************************************************** * PROBLEM DESCRIPTION: After APPLY of PK61313/UK34094/UK34095, * * users can receive message DSQ20855 * * after a write error to the spill data * * set. Users can also receive message * * DSQ60211 with or without PK61313 if the * * spill data set is allocated to multiple * * volumes. * **************************************************************** * RECOMMENDATION: * **************************************************************** Problem 1: Write error that leads to issuance of message DSQ20855. APAR PK61313 tried to "Enforce a single volume spill file by issuing the POINT command prior to every WRITE" anticipating that POINT would fail if a second volume were detected. POINT, which QMF issues in its default form, does not return an error code, so QMF cannot detect whether it completed successfully, and thus POINT cannot be used to detect multiple volumes. Additionally, a POINT past the end of a data set will result in an I/O error on the next READ or WRITE (documented by DFSMS). The end of the last extent is perceived as the end of a data set until a new extent is allocated. If the spill data set needs a new extent, and a POINT past the end of the data set occurs before the WRITE invokes allocation of a new extent, QMF gets a WRITE error and drives a DCB exit, and a subsequent SAVE DATA command will fail because the spill file is incomplete. Prior to the change introduced by PK61313, POINTs were issued ONLY after READs. Since we READ only records that we already wrote, a POINT after a READ will not point past the EOF. Problem 2: Read error that leads to the issuance of message DSQ60211. This problem can occur irrespective of changes introduced by PK61313, if the spill data set is allocated to more than one volume. QMF will write records to a second volume, but when it tries to do a READ from the first volume, it is using TTR information from the second volume, and is thus positioned at an address inappropriate for the first volume. This can drive an end-of-data DCB exit if it's past the end of the file. QMF issues message DSQ60211 indicating the recall spill buffer is not available.
Problem conclusion
Problem 1: All the code introduced by PK61313 has been removed. POINT cannot be used after WRITEs in this module, nor can it be used to detect a multivolume data set. Checking for more than 65535 tracks was removed because under current QMF limitations that require a non-extended format BSAM single volume DSQSPILL data set, z/OS will not allow users to allocate more than 65535 tracks. An ABENDB37-04 will occur when an attempt to allocate an extent that goes past the 64K limit occurs. Problem 2: Before the spill file is opened, the JFCB control block for the spill data set is examined to determine whether a second volume has been allocated. The spill file will not be used if a second volume is detected, and message DSQ20855 will be issued with the volume names for the first and second volumes if a SAVE DATA command is issued.
Temporary fix
Comments
ž**** PE08/09/29 FIX IN ERROR. SEE APAR PK72928 FOR DESCRIPTION ž**** PE08/10/15 FIX IN ERROR. SEE APAR PK73858 FOR DESCRIPTION
APAR Information
APAR number
PK66525
Reported component name
QMF-QUERY MGMT
Reported component ID
566872101
Reported release
910
Status
CLOSED PER
PE
YesPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2008-05-22
Closed date
2008-09-22
Last modified date
2008-11-11
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK40062 UK40063
Modules/Macros
DSQCSIDT DSQDSAVX DSQPNLE DXECVS DXYE0468 DXYE2405
Fix information
Fixed component name
QMF-QUERY MGMT
Fixed component ID
566872101
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":"SSCWRCK","label":"QMF for TSO\/CICS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
11 November 2008