LUTYPE6.1 迁移方式对话的状态表
显示事务在 EXEC CICS® API 下参与 LUTYPE6.1 迁移方式对话时发生的状态过渡的表。
ISSUE SIGNAL 命令和 EIBSIG 标志
在表中,未提及 EIBSIG 标志。 这是因为它的使用是可选的,完全是两个对话伙伴之间达成一致的问题。 在最坏的情况下,它可能在影响 EIB 标志的每个命令之后的任何时间发生。 但是,用于预期的目的,通常在 SEND 命令之后发生。 其优先级 (按测试顺序) 取决于您在应用程序中为其提供的角色。
当合作伙伴发出 ISSUE SIGNAL 命令时,将设置 EIBSIG 标志。
RECEIVE NOTRUNCATE 命令
RECEIVE NOTRUNCATE 命令在 EIBCOMPL 中返回零值,以指示用户缓冲区太小,无法包含从伙伴事务接收的所有数据。 通常,您将继续发出 RECEIVE NOTRUNCATE 命令,直到将最后一部分数据传递给您 (由 EIBCOMPL = X'FF '指示)。 如果未指定 NOTRUNCATE ,并且 RECEIVE 命令指定的数据区太小,无法包含接收到的所有数据,那么 CICS 将截断数据并设置 LENGERR 条件。
SYNCPOINT 和 SYNCPOINT ROLLBACK 命令的状态更改
当发出 SYNCPOINT 和 SYNCPOINT ROLLBACK 命令时,将在当前对该任务处于活动状态的所有对话 (包括 MRO 对话) 上传播这些命令并影响其状态。
回滚后,对话可以处于 SEND 或 RECEIVE 状态,具体取决于当前分布式工作单元启动时的对话状态。 如果由于会话失败或由于接收到 deallocate 异常结束,或者如果伙伴事务发出了 SEND LAST WAIT 或 FREE 命令,那么对话可以处于 FREE 状态。
在同步点或回滚之后,建议先确定对话状态,然后再对对话发出任何进一步的命令。
ISSUE PREPARE 命令后的状态更改
Although ISSUE PREPARE can return with the conversation in either SYNCSEND state, 同步接收 state, or 无同步 state, the only commands allowed on that conversation following an ISSUE PREPARE are SYNCPOINT and SYNCPOINT ROLLBACK. 所有其他命令异常终止。
状态表
| 已发出命令 | 返回了 EIB 标志 | 命令返回 | ALLO-CATED | SEND | PEND-接收 | PEND-免费 | RECEIVE | CONF-RECEIVE |
|---|---|---|---|---|---|---|---|---|
| 状态 1 | 状态 2 | 状态 3 | 状态 4 | 状态 5 | 状态 6 | |||
| 构建连接 | × | 立即 | = | = | = | = | = | = |
| 抽取附加 | × | 立即 | INVREQ | INVREQ | INVREQ | INVREQ | = | INVREQ |
| EXTRACT PROCESS (仅限后端事务) | × | 立即 | 异常终止 | = | = | = | = | = |
| 抽取属性 | × | 立即 | = | = | = | = | = | = |
| SEND (任何有效格式) | 艾伯尔 + 艾伯斯尼尔布 | 检测到错误流后 | 异常终止 | 13 | 13 | 13 | 异常终止 | 异常终止 |
| SEND (任何有效格式) | EIBERR + EIBFREE | 检测到错误流后 | 12 | 12 | 12 | 12 | 异常终止 | 异常终止 |
| SEND (任何有效格式) | 艾伯尔 | 检测到错误流后 | 异常终止 | 5 | 5 | 5 | 异常终止 | 异常终止 |
| 发送邀请等待 | × | 在数据流之后 | 5 | 5 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送邀请确认 | × | 在来自合作伙伴的响应之后 | 5 | 5 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送邀请 | × | 缓冲数据后 | 3 | 3 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送上次等待时间 | × | 在数据流之后 | 12 | 12 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送上次确认 | × | 在来自合作伙伴的响应之后 | 12 | 12 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 上次发送 | × | 缓冲数据后 | 4 | 4 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送等待 | × | 在数据流之后 | 2 | = | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送确认 | × | 在来自合作伙伴的响应之后 | 2 | = | 5 | 12 | 异常终止 | 异常终止 |
| SEND | × | 缓冲数据后 | 2 | = | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | 艾伯尔 + 艾伯斯尼尔布 | 检测到回滚流后 | 异常终止 | 13 | 13 | 异常终止 | 13 | 异常终止 |
| RECEIVE | EIBERR + EIBFREE | 检测到错误后 | 异常终止 | 12 | 12 | 异常终止 | 12 | 异常终止 |
| RECEIVE | 艾伯尔 | 检测到错误后 | 异常终止 | 5 | 5 | 异常终止 | = | 异常终止 |
| RECEIVE | EIBSYNC + EIBFREE | 检测到同步流后 | 异常终止 | 11 | 11 | 异常终止 | 11 | 异常终止 |
| RECEIVE | EIBSYNC + EIBRECV | 检测到同步流后 | 异常终止 | 9 | 9 | 异常终止 | 9 | 异常终止 |
| RECEIVE | EIBSYNC | 检测到同步流后 | 异常终止 | 10 | 10 | 异常终止 | 10 | 异常终止 |
| RECEIVE | EIBCONF + EIBFREE | 在检测到确认流之后 | 异常终止 | 8 | 8 | 异常终止 | 8 | 异常终止 |
| RECEIVE | EIBCONF + EIBRECV | 在检测到确认流之后 | 异常终止 | 6 | 6 | 异常终止 | 6 | 异常终止 |
| RECEIVE | EIBCONF | 在检测到确认流之后 | 异常终止 | 7 | 7 | 异常终止 | 7 | 异常终止 |
| RECEIVE | 免EIB | 检测到错误流后 | 异常终止 | 12 | 12 | 异常终止 | 12 | 异常终止 |
| RECEIVE | EIBRECV | 数据可用时 | 异常终止 | 5 | 5 | 异常终止 | = | 异常终止 |
| 接收通知截断 | EIBCOMPL | 数据可用时 | 异常终止 | 5 | 5 | 异常终止 | = | 异常终止 |
| RECEIVE | × | 数据可用时 | 异常终止 | = | 2 | 异常终止 | 2 | 异常终止 |
| CONVERSE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | |
| ISSUE CONFIRMATION | × | 立即 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 5 |
| ISSUE ERROR | 免EIB | 在来自合作伙伴的响应之后 | 异常终止 | 12 | 12 | 异常终止 | 12 | 12 |
| ISSUE ERROR | × | 在来自合作伙伴的响应之后 | 异常终止 | = | 2 | 异常终止 | 2 | 2 |
| ISSUE ABEND | × | 立即 | 异常终止 | 12 | 12 | 12 | 12 | 12 |
| 发出信号 | × | 立即 | 异常终止 | = | = | 异常终止 | = | = |
| ISSUE PREPARE | 艾伯尔 + 艾伯斯尼尔布 | 在来自合作伙伴的响应之后 | INVREQ | 13 | 13 | 13 | INVREQ | INVREQ |
| ISSUE PREPARE | EIBERR + EIBFREE | 检测到错误后 | INVREQ | 12 | 12 | 12 | INVREQ | INVREQ |
| ISSUE PREPARE | 艾伯尔 | 检测到错误后 | INVREQ | 5 | 5 | 5 | INVREQ | INVREQ |
| ISSUE PREPARE | × | 在来自合作伙伴的响应之后 | INVREQ | 10 | 9 | 11 | INVREQ | INVREQ |
| SYNCPOINT | 欧洲投资银行数据库 | 在来自合作伙伴的响应之后 | = | 2 或 5 | 2 或 5 | 2 或 5 | 异常结束 ASP2 | 异常结束 ASP2 |
| SYNCPOINT | × | 在来自合作伙伴的响应之后 | = | = | 5 | 12 | 异常结束 ASP2 | 异常结束 ASP2 |
| SYNCPOINT ROLLBACK | × | 在整个 UOW 中回滚后 | = | 2 或 5 | 2 或 5 | 2 或 5 | 2 或 5 | 2 或 5 |
| WAIT | × | 立即 | 异常终止 | = | 5 | 12 | 异常终止 | 异常终止 |
| FREE | × | 立即 | 结束 | 结束 | 异常终止 | 结束 | 异常终止 | 异常终止 |
| 已发出命令 | 返回了 EIB 标志 | 配置-发送 | CONF-FREE | 同步接收 | 同步发送 | 无同步 | FREE | 回滚 |
|---|---|---|---|---|---|---|---|---|
| 状态 7 | 状态 8 | 状态 9 | 国家 10 | 国家 11 | 州 12 | 国家 13 | ||
| 构建连接 | × | = | = | = | = | = | = | = |
| 抽取附加 | × | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ |
| EXTRACT PROCESS (仅限后端事务) | × | = | = | = | = | = | = | = |
| 抽取属性 | × | = | = | = | = | = | = | = |
| SEND (任何有效格式) | 艾伯尔 + 艾伯斯尼尔布 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| SEND (任何有效格式) | EIBERR + EIBFREE | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| SEND (任何有效格式) | 艾伯尔 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送邀请等待 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送邀请确认 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送邀请 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送上次等待时间 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送上次确认 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 上次发送 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送等待 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 发送确认 | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| SEND | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | 艾伯尔 + 艾伯斯尼尔布 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBERR + EIBFREE | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | 艾伯尔 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBSYNC + EIBFREE | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBSYNC + EIBRECV | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBSYNC | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBCONF + EIBFREE | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBCONF + EIBRECV | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBCONF | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | 免EIB | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | EIBRECV | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| 接收通知截断 | EIBCOMPL | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| RECEIVE | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| CONVERSE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE | 至于 RECEIVE |
| ISSUE CONFIRMATION | × | 2 | 12 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| ISSUE ERROR | 免EIB | 12 | 12 | 12 | 12 | 12 | 异常终止 | 异常终止 |
| ISSUE ERROR | × | 2 | 2 | 2 | 2 | 2 | 异常终止 | 异常终止 |
| ISSUE ABEND | × | 12 | 12 | 12 | 12 | 12 | 异常终止 | 异常终止 |
| 发出信号 | × | = | = | = | = | = | 异常终止 | 异常终止 |
| ISSUE PREPARE | 艾伯尔 + 艾伯斯尼尔布 | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ |
| ISSUE PREPARE | EIBERR + EIBFREE | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ |
| ISSUE PREPARE | 艾伯尔 | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ |
| ISSUE PREPARE | × | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ | INVREQ |
| SYNCPOINT | 欧洲投资银行数据库 | 异常终止 | 异常终止 | 2 或 5 | 2 或 5 | 2 或 5 | = | 异常终止 |
| SYNCPOINT | × | 异常终止 | 异常终止 | 2 | 2 | 12 | = | 异常终止 |
| SYNCPOINT ROLLBACK | × | 2 或 5 | 2 或 5 | 2 或 5 | 2 或 5 | 2 或 5 | = | 2 或 5 |
| WAIT | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 |
| FREE | × | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 异常终止 | 结束 | 异常终止 |