During a session with Information Exchange, Expedite Base/MVS
can use a series of checkpoints (also known as commits)
to make sure that the systems exchanging information are
synchronized. The frequency and timing of the checkpoints
depends on the recovery level you select for the session.
In addition, Information Exchange does not deliver a file
until the file is entirely committed. If a session ends
before the entire file has been sent, Information Exchange
will not deliver the partial file. Instead, Information
Exchange holds the session until you resume it and either cancel
the partially sent file, or continue transmitting the remaining
data.
To select the right recovery level, you need to understand
how Information Exchange uses the following checkpoints.
Note: Do not use the same account and user ID on
multiple systems. If you start another session using the
same account and user ID, Expedite Base/MVS will end the
first session to proceed with the second session. The results
of the first session will depend on the checkpoints completed
successfully at the time that Expedite Base/MVS ended the
session. Data from the first session may be retransmitted
when the session is reactivated, which causes errors.
Session-level recovery
Session-level recovery is the default recovery level
in Expedite Base/MVS. Session-level recovery does not require
additional work files to run as do the other methods of
data recovery. The checkpoint for session-level recovery
occurs when Expedite Base/MVS requests the end of the session
(all data has been sent and received).
Session-level recovery is preferable if you want all the
files in a session to be delivered in one transmission
or none of the files will be delivered. In the case of an
error, all data in the session must be retransmitted. Session-level
recovery is also well-suited for transmitting small
amounts of data. Recovering a session-level session is easy,
since you simply run Expedite Base/MVS again.
If you transfer a large amount of data during a session-level
recovery session, you may need to increase the amount of
time that Expedite Base/MVS will wait for communication
from Information Exchange before terminating the connection.
Information Exchange will not respond to the termination
request until all sent messages have been moved to the destination
mailbox. Use the timeout parameter on the TRANSMIT
command in the INPRO DD card to specify enough time to receive
transmissions and wait for Information Exchange to acknowledge
all transmissions. The current default timeout value is
2 minutes.
For more information on session-level recovery, see the
Expedite
Base/MVS Programming Guide.
[Return to
Questions]
Checkpoint-level recovery
With this type of recovery, Expedite Base/MVS takes
checkpoints during the session after a set number of characters
has been transmitted to Information Exchange. The number
of characters between checkpoints is determined by the commitdata
setting on the TRANSMIT profile command. Before using checkpoint-level
recovery, you must allocate the work files that Expedite
Base/MVS uses to track committed files.
Checkpoint-level recovery is well suited to sessions with
large or numerous files because only data still awaiting
transfer after the last successful commit must be retransmitted
if the session fails. Also, ending a session takes less
time because transferred data is committed at each checkpoint
during the session.
Running out of space in a work file can cause a session
to become unrecoverable. Expedite Base/MVS uses a pointer
to track its position in the work file being transmitted.
Reallocating a work file to a larger space and copying the
contents can invalidate this pointer, making the session
unrecoverable. Unrecoverable sessions must be retransmitted
and manual intervention may be required to ensure that data
is not duplicated or lost.
For more information on checkpoint-level recovery, see
the Expedite
Base/MVS Programming Guide.
[Return to
Questions]
File-level recovery
File-level recovery is best used when a file must be
committed in its entirety rather than in segments. For example,
when sending EDI data, with multiple envelopes in a single
file, the envelopes are sent as individual files. Using
file-level recovery, none of the envelopes will be committed
until all envelopes in the session have been sent. If the
session is interrupted prior to all envelopes being sent,
all envelopes must be retransmitted. This will ensure that
all envelopes will be available to all recipients at the
same time.
For more information on file-level recovery, see the
Expedite Base/MVS
Programming Guide.
[Return to
Questions]
User-initiated recovery
With user-initiated recovery, you can control exactly when
Expedite Base/MVS performs a commit while transmitting data.
In the data set referenced by the INMSG DD card, you
can place a COMMIT command following the SEND command where
you want a commit to occur. Multiple SEND/COMMIT pairs can
be entered in a data set.
For more information on user-initiated recovery, see the
Expedite
Base/MVS Programming Guide.
[Return to
Questions]
|