This appendix contains the state transition tables
for all the conversation states. Each table contains the following
information:
The intrinsics that can be called
from the state.
The state of the local side of the conversation
after the intrinsic has executed and a status info value has been
returned.
The state of the remote side of the conversation
after the intrinsic has executed.
*** means that the state cannot be determined from the local
side of the conversation.
Table C-1 “Confirm State” shows the Confirm State transition
table.
Table C-1 Confirm State
Intrinsics You Can Call | Status Info | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCConfirmed | 0 Successful Completion | Receive | Send |
MCDeallocate (ABEND) | 0 Successful Completion | Reset | Deallocate |
MCErrMsg | Any value | Confirm | Send |
MCGetAttr | Any value | Confirm | Send |
MCReqToSend | Any value | Confirm | Send |
MCSendError | 0 Successful Completion | Send | Receive |
-51 Resource Failure No Retry | Deallocate | *** |
-52 Resource Failure Retry | Deallocate | *** |
Table C-2 “Confirm Deallocate State” shows the Confirm Deallocate State
transition table.
Table C-2 Confirm Deallocate State
Intrinsics You Can Call | Status Info | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCConfirmed | 0 Successful Completion | Deallocate | Reset |
MCDeallocate (ABEND) | 0 Successful Completion | Reset | Deallocate |
MCErrMsg | Any value | Confirm Deallocate | Send |
MCGetAttr | Any value | Confirm Deallocate | Send |
MCSendError | 0 Successful Completion | Send | Receive |
-51 Resource Failure No Retry | Deallocate | *** |
-52 Resource Failure Retry | Deallocate | *** |
Table C-3 “Confirm Send State” shows the Confirm Send State transition
table.
Table C-3 Confirm Send State
Intrinsics You Can Call | Status Info | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCConfirmed | 0 Successful Completion | Send | Receive |
MCDeallocate (ABEND) | 0 Successful Completion | Reset | Deallocate |
MCErrMsg | Any value | Confirm Send | Receive |
MCGetAttr | Any value | Confirm Send | Receive |
MCSendError | 0 Successful Completion | Send | Receive |
-51 Resource Failure No Retry | Deallocate | *** |
-52 Resource Failure Retry | Deallocate | *** |
Table C-4 “Deallocate State” shows the Deallocate State transition
table.
Table C-4 Deallocate State
Intrinsics You Can Call | Status Info | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCDeallocate (LOCAL) | 0 Successful Completion | Reset | Reset |
MCErrMsg | Any value | Deallocate | Reset |
MCGetAttr | Any value | Deallocate | Reset |
Table C-5 “Receive State” show the Receive State transition
table.
Table C-5 Receive State
Intrinsics You Can Call | Status Info | | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCDeallocate (ABEND) | 0 Successful Completion | | Reset | Deallocate |
MCErrMsg | Any value | | Receive | Send |
MCGetAttr | Any value | | Receive | Send |
MCPostOnRcpt | Any value | | Receive | Send |
MCRcvAndWait or MCRcvNoWait | 0 Successful Completion | | | |
WhatReceived= DATA_COMPLETE | Receive | Send |
WhatReceived= DATA_INCOMPLETE | Receive | Send |
WhatReceived= SEND | | Send | Receive |
WhatReceived= CONFIRM | | Confirm | Send |
WhatReceived= CONFIRM_SEND | | Confirm Send | Receive |
WhatReceived= CONFIRM_DEALLOCATE | Confirm Deallocate | Deallocate |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No Entry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-56 Prog Error No Truncation | | Receive | Send |
-60 Prog Error Data Purged | | Receive | Send |
+80 Timer has expired | Receive | *** |
+100 Deallocate Normal | Deallocate | Reset |
-1020 Deallocate Abend | Deallocate | *** |
MCReqToSend | 0 Successful Completion | | Receive | Send |
MCSendError | 0 Successful Completion | | Send | Receive |
-51 Resource Failure No Entry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
+100 Deallocate Normal | Deallocate | Reset |
MCTest (POSTED) | 0 Successful Completion | | Receive | Send |
-37 Posting Not Active | Receive | Send |
-38 Not Posted | | Receive | Send |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-56 Prog Error No Truncation | | Receive | Send |
-60 Prog Error Data Purged | | Receive | Send |
+100 Deallocate Normal | Deallocate | Reset |
-1020 Deallocate Abend | Deallocate | *** |
MCTest (RequestToSend Received) | Any value | | Receive | Send |
MCWait | 0 Successful Completion | | Receive | Send |
-37 Posting Not Active | Receive | Send |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-56 Prog Error No Truncation | | Receive | Send |
-60 Prog Error Data Purged | | Receive | Send |
+100 Deallocate Normal | Deallocate | Reset |
-1020 Deallocate Abend | Deallocate | *** |
Table C-6 “Reset State” shows the Reset State transition
table.
Table C-6 Reset State
Intrinsics You Can Call | Status Info | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCDeallocate | 0 Successful Completion | Send | Receive |
Any other value | Reset | *** |
MCGetAllocate | 0 Successful Completion | Receive | Send |
Any other value | Reset | *** |
Table C-7 “Send State” shows the Send State transition
table.
Table C-7 Send State
Intrinsics You Can Call | Status Info | | Local State After Intrinsic Execution | Remote State After Intrinsic Execution |
---|
MCConfirm | 0 Successful Completion | | Send | Confirm |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-60 Prog Error Data Purged | | Receive | Send |
+80 Timer has expired | | Send | Receive |
-1020 Deallocate Abend | | Deallocate | *** |
MCDeallocate (FLUSH) | 0 Successful Completion | | Reset | Deallocate |
MCDeallocate (CONFIRM) | 0 Successful Completion | | Reset | Confirm Deallocate |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-60 Prog Error Data Purged | | Receive | Send |
+80 Timer has expired | Send | Receive |
-1020 Deallocate Abend | Deallocate | *** |
MCDeallocate (ABEND) | 0 Successful Completion | | Reset | Deallocate |
MCErrMsg | Any value | | Send | Receive |
MCFlush | Any value | Send | Receive |
MCGetAttr | Any value | | Send | Receive |
MCPrepToRcv (FLUSH) | 0 Successful Completion | | Receive | Send |
MCPrepToRcv (CONFIRM) | 0 Successful Completion | | Receive | Send |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-60 Prog Error Data Purged | | Receive | Send |
+80 Timer has expired | Receive | *** |
-1020 Deallocate Abend | Deallocate | *** |
MCRcvAndWait | 0 Successful Completion | | | |
WhatReceived= DATA_COMPLETE | | Receive | Send |
WhatReceived= DATA_INCOMPLETE | | Receive | Send |
WhatReceived= SEND | | Send | Receive |
WhatReceived= CONFIRM | | Confirm | Send |
WhatReceived= CONFIRM_SEND | | Confirm Send | Receive |
WhatReceived= CONFIRM_DEALLOCATE | Confirm Deallocate | Deallocate |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-56 Prog Error No Truncation | | Receive | Send |
-60 Prog Error Data Purged | | Receive | Send |
+80 Timer has expired | Receive | *** |
+100 Deallocate Normal | Deallocate | Reset |
1020 Deallocate Abend | Deallocate | *** |
MCSendData | 0 Successful Completion | | Send | Receive |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-60 Prog Error Data Purged | | Receive | Send |
-1020 Deallocate Abend | Deallocate | *** |
MCSendError | 0 Successful Completion | | Send | Receive |
-50 Allocation Error | | Deallocate | *** |
-51 Resource Failure No
Retry | | Deallocate | *** |
-52 Resource Failure Retry | | Deallocate | *** |
-60 Prog Error Data Purged | | Receive | Send |
-1020 Deallocate Abend | Deallocate | *** |
MCTest | Any value | | Send | Receive |