A fix is available
APAR status
Closed as new function.
Error description
VSAM will in general prevent simultaneous access to a data set in both RLS and non-RLS modes. However, a read only file non RLS file can be opened if it is shroptions 2. CICS currently rejects this with msgDFHFC0512 to ensure applications get consistent views of the same underlying dataset. This apar will allow the user to override this co-existence protection for CICS and allow the open in the same region.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All. * **************************************************************** * PROBLEM DESCRIPTION: It is not possible to open a single * * data set via both a non-RLS file and an * * RLS file at the same time, in a given * * CICS region. * **************************************************************** * RECOMMENDATION: * **************************************************************** CICS will allow two files to be defined, one for RLS access and for for non-RLS access, both pointing to the same data set. CICS will not permit both these files being open at the same time. Any attempt to open the non-RLS file while the RLS file is already open will fail, and message DFHFC0512 will be issued. Similarly any attempt to open the RLS file whilst the non-RLS file is already open will fail, and message DFHFC0511 will be issued. Additional Keywords: FC0511 FC0512 msgDFHFC0511 msgDFHFC0512
Problem conclusion
Temporary fix
FIX AVAILABLE BY PTF ONLY
Comments
A new user exit, XFCRLSCO, is being introduced. This will be driven during the open of RLS files, and read only non-RLS files, at the point where the open would otherwise fail with the RLS coexistence failure. This new user exit allows CICS to be customized to suppress the RLS coexistence failure, and allow the open to proceed. The exit will only be driven if the non-RLS file is read only. Use of this exit will allow the same data set to be open via both RLS and non-RLS files, but care must be taken since read integrity between the two files cannot be guaranteed. The CICS Transaction Server for z/OS Version 4 Release 1 Customization Guide (SC34-7001-01) will be updated in the following sections. Chapter 1 "Global user exit programs", section "Alphabetical list of global user exit points" (Table 2) will be updated with a new entry for XFCRLSCO, after the existing entry for XFCVSDS: Exit Name - XFCRLSCO Module or Domain - File control RLS coexistence program Where or when invoked - When the opening of a VSAM RLS file or non-RLS read-only file otherwise fails with an RLS coexistence failure. Topic - File control RLS coexistence program XFCRLSCO. Also in Chapter 1, a new sub-section will be added to the section "Global user exit points by function area". This new section will be as follows: File control RLS coexistence program exit XFCRLSCO The XFCRLSCO exit can be called during a request to open a file. Use this exit to allow an application to switch the mode between RLS and read-only non-RLS to access a particular data set. CICS does not allow an open request to take place for a non-RLS file if there is an RLS file already open against the same data set, or if the data set has outstanding RLS work in the system. Also, CICS does not allow an open request to take place for an RLS file if there is an existing non-RLS file already open against the base data set. In these situations, if an open request occurs and the non-RLS file is open for read-only access, the XFCRLSCO exit is driven. You can use this exit to decide whether to allow the open request to proceed or to fail in the usual manner with message DFHFC0511 or DFHFC0512. To switch the access mode, the application can open the data set using a new file with a different access mode. Do not keep the same data set open using both access methods simultaneously over an extended period of time, because CICS does not receive a consistent view of the data set when accessing it concurrently using both RLS and non-RLS files. In particular, CICS cannot get a consistent view if the data set is being updated by the RLS file at the same time as being read by the non-RLS file. If VSAM upgrade set processing occurs while the data set is open using both RLS and non-RLS files, there is an increased risk that read errors might occur because the upgrade processing has not completed on either the base cluster or the associated alternate indexes. Exit XFCRLSCO When Invoked During a file OPEN request, before the open request is issued to VSAM. Exit Specific Parameters UEPFILEN - Address of the 8-byte file name. If the file name is less than 8 characters in length, it is padded with blanks. UEPDSNAME - Address of the 44-byte field containing the base data set name. If the data set name is less than 44 characters in length, it is padded with blanks. UEPFSERV - Address of the file SERVREQ byte UEPFRDIM - Read valid indicator UEPFUPDIM - Update valid indicator UEPFADDIM - Add valid indicator UEPFDELIM - Delete valid indicator UEPFBRZIM - Browse valid indicator UEPFDSACC - Address of the file access method flag UEPFVSAM - VSAM file indicator UEPFDTBL - Data table file indicator UEPFDTUM - User data table file indicator UEPFRLS - RLS file indicator UEPFCFDT - CFDT file indicator UEPRECUR - Address of halfword recursion level Return Codes UERCNORM Continue processing as normal - the open request fails. UERCBYP Allow the open to take place - bypass the coexistence failure. XPI Calls You can use XPI commands, but the commands must not result in any state changes to any files. API and SPI calls You can use EXEC CICS SPI and API commands, but the commands must not make any state changes to any files. For example, you can use EXEC CICS INQUIRE FILE, but not EXEC CICS SET FILE, or EXEC CICS API commands against file control which result in state changes to any files. Note: 1. The exit will not be driven if the non-RLS file has any updateable SERVREQS set (i.e. allows updates, adds, or deletes). 2. The data set being opened must specify share options SHAREOPTION(2) on the VSAM base cluster. If lower share options are specified then VSAM will fail the second open. 3. If static allocation is being used then be sure to specify DISP=SHR, otherwise VSAM will fail the open The CICS Transaction Server for z/OS Version 4 Release 1 Diagnosis Reference (GC34-7038-01) will be updated in "Chapter 24. File control". The "Exits" section will be updated to list the new XFCRLSCO exit under the existing entry for DFHFCN, and also under a new entry for DFHFCRO. The CICS Transaction Server for z/OS Version 4 Release 1 Data Areas manual (GC34-7014-02) will be updated in the "UEPAR Global user exit plist" structure (Table 719) with information for a new exit - XFCRLSCO. The following structure will be added after the plist for XFCSREQC and before the plist for XRCINIT: XFCRLSCO PARAMETERS Exit Specific parameters are: UEPFILEN - Address of 8-byte field containing the file name UEPDSNAME - Address of 44-byte field containing the base DSNAME UEPFSERV - Address of the file SERVREQ byte UEPFDSACC - Address of the file access method flag UEPRECUR - Address of halfword recursion level VALID RETURN CODES FOR XFCSREQ ARE: UERCNORM EQU X'00' NORMAL(DEFAULT) UERCBYP EQU X'04' BYPASS THE OPEN FAILURE Valid values for UEPFSERV are: UEPFRDIM EQU X'80' Read Valid Indicator UEPFUPDIM EQU X'20' Update Valid Indicator UEPFADDIM EQU X'10' Add Valid Indicator UEPFDELIM EQU X'08' Delete Valid Indicator UEPFBRZIM EQU X'02' Browse Valid Indicator Valid values for UEPFDSACC are: UEPFVSAM EQU X'80' VSAM File Indicator UEPFDTBL EQU X'20' Data table File Indicator UEPFDTUM EQU X'10' User Data table File Indicator UEPFRLS EQU X'04' RLS File Indicator UEPFCFDT EQU X'02' CFDT File Indicator (30) ADDRESS 4 UEPFILEN ADDRESS OF FILE NAME (34) ADDRESS 4 UEPDSNAME ADDRESS OF DATA SET NAME (38) ADDRESS 4 UEPFSERV ADDRESS OF SERVREQ BYTE VALID VALUES FOR UEPFSERV ARE: (38) BITSTRING 0 UEPFBRZIM "X'02'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFDELIM "X'08'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFADDIM "X'10'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFUPDIM "X'20'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFRDIM "X'80'" BROWSE VALID INDICATOR (3C) ADDRESS 4 UEPFDSACC ADDRESS OF ACCESS METHOD BYTE VALID VALUES FOR UEPFSERV ARE: (38) BITSTRING 0 UEPFCFDT "X'02'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFFRLS "X'04'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFDTUM "X'10'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFDTBL "X'20'" BROWSE VALID INDICATOR (38) BITSTRING 0 UEPFVSAM "X'80'" BROWSE VALID INDICATOR (40) ADDRESS 4 RESERVED (44) ADDRESS 4 RESERVED (48) ADDRESS 4 UEPRECUR UEPRECUR - AS DEFINED ABOVE The same table will be updated in the section labelled "EXITID EQU-LIST - Global User Exit Number". The following new entries will be added after the existing entry for XISQLCL: (B0) SIGNED 0 XFCRLSCO "118" The Data Areas manual will also be updated in the "DSN File control dataset name" structure (Table 105). Four new bit values will be added to the FCTBCFL2 byte as follows: (BC) BITSTRING 0 FCTBCRCO "X'08'" XFCRLSCO has allowed RLS and non-RLS ACBs open for this base cluster block (BC) BITSTRING 0 FCTBCCON "X'04'" XFCRLSCO footprint FCN COEX (BC) BITSTRING 0 FCTBCCOW "X'02'" XFCRLSCO footprint FCN WORK (BC) BITSTRING 0 FCTBCCOR "X'01'" XFCRLSCO footprint FCRO New values will also be added to the structure after the existing reserved fullword at offset X'118' and before DFHBCEND: (11C) HALFWORD 2 FCTBC_NRUC Non RLS file open with updateable SERVREQs count (11E) HALFWORD 2 FCTBCUCN Count of ACBs that are open against this dataset for non-RLS files (120) HALFWORD 2 FCTBCUCR Count of ACBs that are open against this dataset for RLS files (122) HALFWORD 2 Reserved The end of table will be updated as follows: (128) DBL WORD 8 DFHBCEND (0) Align, to round up gross length to double word (128) 0 DFHBCLEN "DFHBCEND-DFHBCCDS" , The CICS Transaction Server for z/OS Version 4 Release 1 Trace Entries manual (SC34-7013-01) will be updated in "Chapter 2. AP domain trace points: new style" in the section "File controls trace points (AP 2300 - AP 24E1)". The following new trace points will be added, after existing entry AP 242B: AP 242E DFHFCRO EXC FCRO_TRACE_XFCRLSCO_BYPASS_ACTIVE 1 FCTDSID 2 FCTDNAME AP 242F DFHFCN EXC FCN_TRACE_XFCRLSCO_BYPASS_ACTIVE 1 FCTDSID 2 FCTDNAME 3 RLS OPEN ERROR (RLSCOEX or RLSWORK) The CICS Transaction Server for z/OS Version 4 Release 1 Messages and Codes manual (GC34-7035-01) will be updated with two new messages, and one changed message. The new messages will be added in "Chapter 1. DFH messages" in the "DFHFCnnnn messages" section, after existing message DFHFC0208. DFHFC0209I <applid> User exit XFCRLSCO is allowing non-RLS file <filename> to bypass the RLS coexistence checks. Explanation: User exit XFCRLSCO is active and ran because non-RLS file <filename> is being opened. The user exit replied with a return code of UERCBYP. This return code means that the non-RLS file has read-only access and an RLS file is already open against the same data set. The non-RLS file must stay in read-only mode to continue to access the data set while the RLS file is open. System Action: Processing continues. User Response: None. Module: DFHFCNO. XMEOUT Parameters: applid, filename. Destination: Console. DFHFC0210I <applid> User exit XFCRLSCO is allowing RLS file <filename> to bypass the RLS coexistence checks. Explanation: User exit XFCRLSCO is active and ran because RLS file <filename> is being opened. The user exit replied with a return code of UERCBYP. This return code means that a non-RLS file has read-only access and is already open against the same data set. The non-RLS file must stay in read-only mode to continue to access the data set while the RLS file is open. System Action: Processing continues. User Response: None. Module: DFHFCRO. XMEOUT Parameters: applid, filename. Destination: Console. In the same section, message DFHFC0987 will be updated. The second paragraph of the message explanation will be updated to read as follows: A data set can not be opened by different files in both RLS and non-RLS mode at the same time, with two exceptions: * Another CICS region or batch process can open a data set in non-RLS read-only mode at the same time as the data set is open in RLS mode. * The XFCRLSCO user exit can override the default behavior and open the data set using both RLS and non-RLS files, provided that the non-RLS files have read-only access. **** PE11/09/19 FIX IN ERROR. SEE APAR PM47251 FOR DESCRIPTION
APAR Information
APAR number
PM12835
Reported component name
CICS TS Z/OS V4
Reported component ID
5655S9700
Reported release
600
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-04-23
Closed date
2011-03-22
Last modified date
2011-10-11
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK65921 UK65922
Modules/Macros
DESFCDR DESFCLF DESFCO1 DESFCRO DESFCRS DESFCRV DESPGDUF DFH$STTB DFHAPEX DFHAPTR5 DFHDSND DFHDSNPS DFHEXITP DFHFCBD DFHFCDN DFHFCDR DFHFCDTS DFHFCDUF DFHFCFS DFHFCLF DFHFCN DFHFCNC DFHFCNO DFHFCRO DFHFCRP DFHFCRS DFHFCRV DFHFCTRM DFHFCTRN DFHFCVR DFHFCVS1 DFHMEFAC DFHMEFAE DFHMEFAK DFHMEFBE DFHPGDUF DFHSIC1 DFHSUEX DFHUEDUF DFHUEH DFHUEIQ DFHUEM DFHUEXIT DFHUEXPT DFH12835 EYUTNLGX
SC34700101 | GC34703801 | GC34701402 | SC34701301 | GC34703501 |
Fix information
Fixed component name
CICS TS Z/OS V4
Fixed component ID
5655S9700
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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"4.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"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":"4.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
11 October 2011