LUSTATUS protocol
IMS sends and receives LUSTATUS
as
summarized in the following table. The DFC bracket, send/receive,
and response requirements illustrated in this figure are subject to
the considerations detailed in the balance of this topic.
Any LUSTATUS
sense code not listed
in the following table causes the ISC session to be terminated. An
S in the table indicates the suggested indicator settings for the
given LUSTATUS. An X in the table indicates that IMS also supports the specified indicator settings
for the given LUSTATUS.
LUSTATUS | VTAM indicators with LUSTATUS | ||||||||
---|---|---|---|---|---|---|---|---|---|
RQE1 | RQD1 | RQE2 | RQD2 | ||||||
EB | CD | -- | CD | EB | CD | -- | CD | EB | |
Sense Code Received1 : Commit–X'0006' | S | S | X | S | |||||
Sense Code Received1 : NO-OP–X'0006' | X | S | X | S | |||||
Sense Code Received1 : Queue Empty–X'0007' | S | X | S | ||||||
Function Abort–X'0864' | S | S | X | S | |||||
Function Abort–X'0865' | S | S | X | S | |||||
Function Abort–X'0866' | X | X | X | X | |||||
Sense Codes Sent: Commit–X'0006' | |||||||||
Sense Codes Sent: NO-OP–X'0006' | X | X | |||||||
Sense Codes Sent: Queue Empty–X'0007' | X | X | |||||||
Function Abort –X'0865' | X | X | X |
- While IMS is
waiting for conversational input, it accepts
LUSTATUS
carrying EB only. EB causes the conversational output message to be dequeued, conversation mode to be terminated, and the Conversational Abnormal Termination exit routine to be scheduled. The session is terminated if anLUSTATUS
carrying any other protocol is received.
LUSTATUS
RQD1
or RQD2. IMS requests DR1, DR2,
or exception DR1 or DR2 as indicated in the previous table. The session
is terminated if an exception occurs to LUSTATUS
. - LUSTATUS - Queue Empty.
IMS sends and receives
LUSTATUS - queue empty
.IMS sendsLUSTATUS - queue empty
:- After receiving an asynchronous (ATTACH SCHEDULER) input message and having no output immediately available.
- After sending all available output on a given queue.
RQD1 and end-bracket are indicated on the
LUSTATUS
sent when IMS is not in conversation or response mode and has been left in-brackets/SEND
, and no output is available to be sent from a component defined asSINGLE1
orMULT1
. RQE1 and change-direction are indicated on theLUSTATUS
sent when IMS is not in conversation or response mode and has been left in-brackets/SEND
, and no output is available to be sent from a component defined asSINGLE2
orMULT2
. LUSTATUS - Function Abort
. The supported sense codes are:- X'0864'
- Loop occurs upon re-execution. Sender should not resend the same data.
- X'0865'
- Data sender is responsible for detecting and preventing loop.
- X'0866'
- Data receiver is responsible for detecting and preventing loop.
IMS sendsLUSTATUS - function abort
X'0865' only under these conditions:- When an IMS /DEQUEUE command
has been issued by an authorized IMS terminal
operator before the last page of an MFS-demand or autopaged output
message has been sent by IMS.
The DFC bracket and send/receive protocol indicated on the
LUSTATUS
is the same as that which would occur with the last chain (page) had the message been successfully sent.
The following occurs when IMS receivesLUSTATUS - function abort
:- Except during conversational mode, any function abort received
after an output message (including the last page of MFS demand-paged
or autopaged output) sent RQE/CD causes the output message to be committed
and does not cause session termination.
LUSTATUS
that is processed as a normal flow input before it is processed as anLUSTATUS
command also causes the message to be committed. - Any function abort causes an incomplete input MFS-autopaged message to be discarded.
- Function abort X'0864', received before the last page of an output MFS demand-paged message is sent, causes the message to be dequeued prior to continuing normal input/output operations if the output is conversational and demand-paged. The Conversational Abnormal Termination exit routine is invoked, just as if an /EXIT command had been received on the session.
- Function abort X'0865', received before the last page of an active output MFS demand-paged message is sent, causes the message to be returned to the output message queue and the session to be terminated.
- Function abort X'0866', received before the last page of an active output MFS demand-paged message, causes the message to be returned to the message queue and made available for retransmission before normal input/output operations continue.
- Any function abort resets the ATTACH states to those in effect at the last sync point.
LUSTATUS - function abort might never be sent to IMS in reply to any RU indicating RQD2 or RQE2, or the session is terminated.
- LUSTATUS - Commit
IMS does not send LUSTATUS - commit. IMS receives LUSTATUS - commit as an end-of-message indication immediately following the last page of autopaged input and with EB while awaiting conversational input. This creates a
normal
end of the conversation by invoking the Conversational Abnormal Termination exit routine with a new input vector of X'28'. This allows the exit routine to schedule a transaction to commit pending resources reflected in the scratchpad area (SPA). LUSTATUS - NO-OP
IMS sends and receives
LUSTATUS - NO-OP
.IMS sendsLUSTATUS - NO-OP
:- To allow RQE1 and change-direction (CD) to flow after SIGNAL RCD.
- To end the bracket after receiving a synchronous input message
that generates no output. In IMS,
this only occurs for the
FORMAT
,/RDISPLAY
, and/DISPLAY
commands when attached synchronously. TheLUSTATUS - NO-OP
is sent indicating RQD1 and EB. - To end the bracket at those times when bound in-brackets/
SEND
and no synchronous output or restart is possible. That is, IMS is not in conversation or response mode after session restart. TheLUSTATUS
is sent, indicating RQD1 and EB. - To allow required input when bound in-brackets/
SEND
at session restart and a pending conversational message is dequeued using STSN protocol.LUSTATUS
is sent indicating RQE1 and CD. - To end the bracket after receiving exception or ERP FMH7 (without EB) sense code X'0864', following response mode or the last output message of an IMS conversation.
LUSTATUS - NO-OP
can be received during asynchronous or synchronous input processing and might indicate either CD or EB, as necessary. Receipt of LUSTATUS EB during an IMS conversation or response mode or while in test mode causes termination of the IMS conversation, response, or test mode and causes the associated output message to be dequeued. For conversation, the Conversational Abnormal Termination exit routine is invoked just as if an/EXIT
command had been received.When IMS is the secondary half session, it receives a special case of
LUSTATUS BB/EB RQ*1
after responding with DR1 to a BID command sent by the primary half session. ThisLUSTATUS
removes IMS (secondary) from a DFC in-brackets/pending state that was set after the aforementioned DR1 was sent and the primary half session has no other message available to be sent. This condition might occur when, for example, the application within the primary half session that caused the BID to be sent might have been abnormally terminated during the time between sending the BID and receiving the BID response.
LUSTATUS-CD
should not be followed
by another LUSTATUS-CD
. Doing so creates a back-and-forth
effect between the half sessions. IMS always
responds LUSTATUS-EB
when receiving LUSTATUS-CD
and
no output is available to be sent.