IBM SC33-1683-02 Server User Manual


 
It is recommended that you restrict EXEC CICS commands to inquiries, and
avoid commands that update CICS resources, because the resources may
themselves be in a state of recovery. In particular, the following restrictions
apply:
1. Do not issue any recoverable operations.
2. Do not use operations that access systems or resource owners external
to this CICS, even if the target resource is non-recoverable.
3. Do not disable or close files, because this could cause further error
conditions.
4. It is possible for this exit to be invoked under a different transaction
environment from that under which the updates that are being backed
out were originally made. If your exit program wants to perform any
actions (such as writing a message to the terminal) that require it to be
running under the original transaction environment, it must first check
the value returned in the RE_ATTACHED_TRANSACTION parameter of
a transaction manager INQUIRE_TRANSACTION XPI call.
DFH$FCLD sample global user exit program
DFH$FCLD provides sample processing for the file control logical delete global user
exit, XFCLDEL. The exit program, if enabled at the XFCLDEL exit point, is invoked
when a WRITE to a VSAM ESDS or BDAM data set is being backed out. Because
these access methods do not support a physical delete operation, special action
must be taken to provide a logical delete function. Normally this involves flagging
the record in a way that application programs that use the data set recognize as
meaning the record has been deleted.
There is more information about using the XFCLDEL user exit, and about the
DFH$FCLD sample program, in the comments within the DFH$FCLD source code.
In summary, DFH$FCLD performs the following processing:
v Makes a user trace entry if tracing is active for file control. This has trace point id
X'01F0' and traces:
An eye-catcher ‘DFH$FCLD ENTRY’
The unmarked file control request data
The file control portion of the log record.
v Issues an EXEC CICS INQUIRE FILE command to check the access method
and type to confirm that the file is a VSAM ESDS or BDAM data set. The logical
delete exit should have been invoked only if the file is one of these types.
v For a VSAM ESDS:
Flags the record (whose address is passed to the exit in UEPFDATA) as
logically deleted. The sample adopts what is probably the most common
convention, which is to flag the first byte with a logical delete mark of X'FF'.
Takes the normal exit from the program.
v For BDAM:
Flags the record (whose address is passed to the exit in UEPFDATA) as
logically deleted. The sample adopts a convention for BDAM of flagging the
first byte with a logical delete mark of X'C0'.
Takes the normal exit from the program.
v For any other combination of access method and type:
Does not process the request, and the record is not flagged as deleted
Takes the error exit from the program.
file control recovery program exits
Chapter 1. Global user exit programs 123