State transitions in LUTYPE6.1 migration-mode conversations

In this section, the state table shows the state transitions that occur when transactions engage in LUTYPE6.1 conversations in migration mode. The state table includes the commands available and the states returned when starting a back-end transaction using the SEND [FMH|ATTACHID] command with the transaction identifier imbedded in first four bytes of user data. For back-end transactions started by CONNECT PROCESS, use the tables in State transitions in APPC mapped conversations, but remember that the BUILD ATTACH, SEND ATTACHID, SEND FMH, and EXTRACT ATTACH commands are also available.

The commands you can issue, coupled with the EIB flags that can be set after execution, are shown in column 1 down the left side of the table. The possible conversation states are shown across the top of the table. The states correspond to the columns of the table. The intersection of a row (command and EIB flag) and a column (state) represents the state transition, if any, that occurs when a particular command returning a particular EIB flag is issued in a particular state. A number at an intersection indicates the state number of the next state. Other symbols represent other conditions, as follows:

Symbol Meaning
N/A Cannot occur.
× The EIB flag is any one that has not been covered in earlier rows, or it is irrelevant (but see the note on EIBSIG if you want to use ISSUE SIGNAL).
Ab The command is not valid in this state. Issuing a command in a state in which it is not valid usually causes an ATCV abend.
= Remains in current state.
End End of conversation.
Table 48. LUTYPE6.1 conversations in migration mode, part 1
Command issued EIB flag returned49 ALLO- CATED50 SEND PEND- RECEIVE PEND- FREE RECEIVE CONF- RECEIVE
State 1 State 2 State 3 State 4 State 5 State 6
BUILD ATTACH    ×    =    =    =    =    =    =
EXTRACT ATTACH    ×    Ab51    Ab51    Ab51    Ab51    =    Ab51
EXTRACT PROCESS52    ×    Ab    =    =    =    =    =
EXTRACT ATTRIBUTES    ×    =    =    =    =    =    =
SEND (any valid form)
EIBERR
+ EIBSYNRB
   Ab    13    13    13    Ab    Ab
SEND (any valid form)
EIBERR
+ EIBFREE
   12    12    12    12    Ab    Ab
SEND (any valid form) EIBERR    Ab    5    5    5    Ab    Ab
SEND INVITE WAIT    ×    5    5    Ab    Ab    Ab    Ab
SEND INVITE CONFIRM    ×    5    5    Ab    Ab    Ab    Ab
SEND INVITE    ×    3    3    Ab    Ab    Ab    Ab
SEND LAST WAIT    ×    12    12    Ab    Ab    Ab    Ab
SEND LAST CONFIRM    ×    12    12    Ab    Ab    Ab    Ab
SEND LAST    ×    4    4    Ab    Ab    Ab    Ab
SEND WAIT    ×    2    =    Ab    Ab    Ab    Ab
SEND CONFIRM    ×    2    =    553    1253    Ab    Ab
SEND    ×    2    =    Ab    Ab    Ab    Ab
RECEIVE
EIBERR
+ EIBSYNRB
   Ab    1354    1355    Ab    13    Ab
RECEIVE
EIBERR
+ EIBFREE
   Ab    1254    1255    Ab    12    Ab
RECEIVE EIBERR    Ab    554    555    Ab    =    Ab
RECEIVE
EIBSYNC
+ EIBFREE
   Ab    1154    1155    Ab    11    Ab
RECEIVE
EIBSYNC
+ EIBRECV
   Ab    954    955    Ab    9    Ab
RECEIVE EIBSYNC    Ab    1054    1055    Ab    10    Ab
RECEIVE
EIBCONF
+ EIBFREE
   Ab    854    855    Ab    8    Ab
RECEIVE
EIBCONF
+ EIBRECV
   Ab    654    655    Ab    6    Ab
RECEIVE EIBCONF    Ab    754    755    Ab    7    Ab
RECEIVE EIBFREE    Ab    1254    1255    Ab    12    Ab
RECEIVE EIBRECV    Ab    554    555    Ab    =    Ab
RECEIVE NOTRUNCATE56 EIBCOMPL56    Ab    554    555    Ab    =    Ab
RECEIVE    ×    Ab    =54    255    Ab    2    Ab
Note:
See topic Footnotes for footnotes.
Table 49. LUTYPE6.1 conversations in migration mode, part 2
CONF- SEND CONF- FREE SYNC- RECEIVE SYNC- SEND SYNC- FREE FREE ROLL- BACK Command returns
State 7 State 8 State 9 State 10 State 11 State 12 State 13
   =    =    =    =    =    =    = Immediately
   Ab51    Ab51    Ab51    Ab51    Ab51    Ab51    Ab51 Immediately
   =    =    =    =    =    =    = Immediately
   =    =    =    =    =    =    = Immediately
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After error flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After error flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After error flow detected
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data flows
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After response from partner
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data buffered
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data flows
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After response from partner
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data buffered
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data flows
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After response from partner
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After data buffered
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After rollback flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After error detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After error detected
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After sync flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After sync flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After sync flow detected
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After confirm flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab
After confirm flow detected
 
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After confirm flow detected
   Ab    Ab    Ab    Ab    Ab    Ab    Ab After error flow detected
   Ab    Ab    Ab    Ab    Ab    Ab    Ab When data available
   Ab    Ab    Ab    Ab    Ab    Ab    Ab When data available
   Ab    Ab    Ab    Ab    Ab    Ab    Ab When data available
table continued ......
Table 50. LUTYPE6.1 conversations in migration mode, part 3
Command issued EIB flag returned49 ALLO- CATED50 SEND PEND- RECEIVE PEND- FREE RECEIVE CONF- RECEIVE
State 1 State 2 State 3 State 4 State 5 State 6
CONVERSE57 EIB flags and states as for RECEIVE
ISSUE CONFIRMATION    ×    Ab    Ab    Ab    Ab    Ab    5
ISSUE ERROR EIBFREE    Ab    12    12    Ab    12    12
ISSUE ERROR    ×    Ab    =    2    Ab    2    2
ISSUE ABEND    ×    Ab    12    12    12    12    12
ISSUE SIGNAL58    ×    Ab    =    =    Ab    =    =
ISSUE PREPARE
EIBERR
+ EIBSYNRB
   Ab51    13    13    13    Ab51    Ab51
ISSUE PREPARE
EIBERR
+ EIBFREE
   Ab51    12    12    12    Ab51    Ab51
ISSUE PREPARE EIBERR    Ab51    5    5    5    Ab51    Ab51
ISSUE PREPARE    ×    Ab51    1059    959    1159    Ab51    Ab51
SYNCPOINT60 EIBRLDBK    = 2 or 561 2 or 561 2 or 561    Ab62    Ab62
SYNCPOINT60    ×    =    =    5    12    Ab62    Ab62
SYNCPOINT ROLLBACK60    ×    = 2 or 561 2 or 561 2 or 561 2 or 561 2 or 561
WAIT    ×    Ab    =    5    12    Ab    Ab
FREE    ×    End    End63    Ab    End    Ab    Ab

 

Table 51. LUTYPE6.1 conversations in migration mode, part 4
CONF- SEND CONF- FREE SYNC- RECEIVE SYNC- SEND SYNC- FREE FREE ROLL- BACK Command returns
State 7 State 8 State 9 State 10 State 11 State 12 State 13
States as for RECEIVE When data available
   2    12    Ab    Ab    Ab    Ab    Ab Immediately
   12    12    12    12    12    Ab    Ab After response from partner
   2    2    2    2    2    Ab    Ab After response from partner
   12    12    12    12    12    Ab    Ab Immediately
   =    =    =    =    =    Ab    Ab Immediately
   Ab51    Ab51    Ab51    Ab51    Ab51    Ab51    Ab51
After response from partner
 
   Ab51    Ab51    Ab51    Ab51    Ab51    Ab51    Ab51
After error detected
 
   Ab51    Ab51    Ab51    Ab51    Ab51    Ab51    Ab51 After error detected
   Ab51    Ab51    Ab51    Ab51    Ab51    Ab51    Ab51 After response from partner
   Ab    Ab 2 or 561 2 or 561 2 or 561    =    Ab After response from partner
   Ab    Ab    2    2    12    =    Ab After response from partner
2 or 561 2 or 561 2 or 561 2 or 561 2 or 561    = 2 or 561 After rollback across UOW
   Ab    Ab    Ab    Ab    Ab    Ab    Ab Immediately
   Ab    Ab    Ab    Ab    Ab    End    Ab Immediately

 


49.
EIBSIG has been omitted. This is because its use is optional and is entirely a matter of agreement between the two conversation partners. In the worst case, it can occur at any time after every command that affects the EIB flags. However, used for the purpose for which it was intended, it usually occurs after a SEND command. Its priority in the order of testing depends on the role you give it in the application.
50.
Before a session is allocated, there is no conversation, and therefore no conversation state. The EXEC CICS ALLOCATE command does not appear in the tables. This is because each ALLOCATE gets a session to start a new conversation and does not affect any conversation that is already in progress. After ALLOCATE is successful, the front-end transaction starts the new conversation in allocated state.
51.
This results, not in an ATCV abend, but in an INVREQ return code.
52.
You can issue the EXTRACT PROCESS command from the back-end transaction only.
53.
No data may be included with SEND CONFIRM.
54.
Equivalent to SEND INVITE WAIT followed by RECEIVE.
55.
Equivalent to WAIT followed by RECEIVE.
56.
RECEIVE NOTRUNCATE returns a zero value in EIBCOMPL to indicate that the user buffer was too small to contain all the data received from the partner transaction. Normally, you would continue to issue RECEIVE NOTRUNCATE commands until the last section of data is passed to you, which is indicated by EIBCOMPL = X'FF'. If NOTRUNCATE is not specified, and the data area specified by the RECEIVE command is too small to contain all the data received, CICS® truncates the data and sets the LENGERR condition.
57.
Equivalent to SEND INVITE WAIT [FROM] followed by RECEIVE.
58.
ISSUE SIGNAL sets the partner’s EIBSIG flag.
59.
Although ISSUE PREPARE can return with the conversation in either syncsend state, syncreceive state, or syncfree state, the only commands allowed on that conversation following an ISSUE PREPARE are SYNCPOINT and SYNCPOINT ROLLBACK. All other commands abend ATCV.
60.
The commands SYNCPOINT and SYNCPOINT ROLLBACK do not relate to any particular conversation. They are propagated on all the conversations that are currently active for the task, including MRO conversations. For the SYNCPOINT command, all these conversations must be in send state.
61.
The state of each conversation after rollback depends on several factors:
62.
This causes an ASP2 abend, not an ATCV.
63.
Equivalent to SEND LAST WAIT followed by FREE.

[[ Contents Previous Page | Next Page Index ]]