INQUIRE UOW
检索有关工作单元 (UOW) 的信息。
语法
通过指定 XCMD 系统初始化参数并确保事务的命令安全检查处于激活状态(在 TRANSACTION 资源定义中指定 CMDSEC(YES) 或在 CMDSEC 系统初始化参数中指定 ALWAYS),激活命令安全检查。
条件: END , ILLOGIC , NOTAUTH 和 UOWNOTFOUND
NOHANDLE, RESP, 和 RESP2 是可以添加到所有 EXEC CICS 命令中的常用选项,用于处理错误条件。 命令语法图和选项说明中没有明确包含这些选项。 有关这些常用选项和 EXEC CICS 命令语法的信息,请参阅 EXEC CICS 命令格式和编程注意事项. 有关使用 CVDA 的更多信息,请参阅 CICS-值数据区 (CVDA)。
此命令是线程安全的。
描述
INQUIRE UOW 命令检索有关工作单元或处于指定状态的所有 UOW 的信息。 它返回 UOW 的状态 (例如, INDOUBT) 以及它是处于活动状态,正在等待状态还是已搁置状态。 在某些情况下,它会返回导致 UOW 被搁置的资源的名称,以及启动该 UOW 的事务,用户和终端的名称。
INQUIRE UOW 命令始终返回有关 本地 UOW 的信息; 即,对于分布式 UOW ,它仅返回有关发出该命令的系统上所需的工作的信息。 通过将 NETUOWID 字段中返回的网络范围 UOW 标识与其他系统上本地 UOW 的网络范围标识进行匹配,可以组合有关分布式 UOW 的信息。
有关本地和分布式 UOW 的更多信息,请参阅 对系统间问题进行故障诊断。
浏览
您还可以使用 INQUIRE UOW 命令上的浏览选项 (START , NEXT 和 END) 来浏览系统中当前的所有 UOW。 请参阅 浏览资源定义 ,以获取有关浏览的常规信息,包括语法,异常条件和示例。
例如,如果您怀疑可恢复数据集或连接存在问题,那么可以使用 INQUIRE UOW 来返回有关由于连接或数据集故障而搁置的 UOW 的信息。
EXEC CICS INQUIRE UOW START
EXEC CICS INQUIRE UOW(data-area) NEXT
SYNCPOINT
EXEC CICS INQUIRE UOW(data-area) NEXT
SYNCPOINT
⋮EXEC CICS INQUIRE UOW END这是因为每次执行 SYNCPOINT 命令时,都会创建新的 UOW。 在下一个 INQUIRE UOW 中返回新的 UOW ,后跟 SYNCPOINT 等等。
选项
- AGE (数据区)
- 返回一个全字二进制值,给出自 UOW 进入其当前 WAITSTATE 以来的秒数。
- LINK (数据区)
- 返回 8 字符值,对于 WAITCAUSE 值 CONNECTION ,该值是导致 UOW 等待或搁置的远程系统的网络名。 对于其他 WAITCAUSE 值, LINK 返回空白。
- NETNAME (data-area)
- 返回从中启动 UOW 的终端的 8 字符网络名。 如果 UOW 是从 ISC 或 MRO 会话启动的,那么 NETNAME 将返回远程区域的网络名。 如果 UOW 不是从终端启动的,也不是从 ISC 或 MRO 会话启动的,那么 NETNAME 返回空白。 对于 OTS 事务, NETNAME 返回空白。
- NETUOWID (数据区)
- 返回此网络中 UOW 的 LU6.2 名称,即 UOW 的网络范围标识。 这是一个 27 个字符的数据区。
通过将网络范围的 UOW 标识与其他系统上本地 UOW 的网络范围标识进行匹配,可以组合有关分布式 UOW 的信息。
- OTSTID (data-area)
- 返回 UOW 所属的 OTS 事务的事务标识 (TID) 的前 128 个字节。 如果 OTS 名称少于 128 个字节,那么将在右边使用二进制零进行填充。
- SYSID (data-area)
- 返回 4 字符值,对于 WAITCAUSE 值 CONNECTION ,该值是导致 UOW 等待或搁置的连接的 sysid。 如果已废弃连接,并且对于其他 WAITCAUSE 值, SYSID 将返回空白。
- TASKID (data-area)
- 返回一个 4 字节的压缩十进制值,给出最初与此 UOW 关联的任务号。 如果对 UOW 进行了搁置,那么该任务将终止。 在这种情况下,该数字可能已被另一个任务复用。
- TERMID (数据区)
- 返回从中启动此 UOW 的终端或会话的 4 字符标识。 这是任务的主要设施。 如果事务是镜像事务 CSMI ,那么它是会话。 对于属于 OTS 事务的 UOW , TERMID 是连接任务的请求所使用的会话。
- TRANSID (数据区)
- 返回启动此 UOW 的事务的 4 字符标识。
- UOW (数据区)
- 指定要查询的 UOW 的 16 字节本地标识,最后 8 个字节始终为空 (X'00 ')。
- UOWSTATE (cvda)
- 返回一个 CVDA 值,指示 UOW 的状态。 CVDA 值如下:
- 回退
- 此 UOW 正在回退,或者未能回退该 UOW 中涉及的一个或多个可恢复资源。
- 落实
- 已作出落实 UOW 的决定,但 UOW 正在等待或已搁置。 这可能是因为决策尚未传达给同步点中的所有参与者,或者是因为落实处理期间发生了故障。
- FORCE
- 正在尝试强制 UOW 回退或落实,如 TRANSACTION 资源定义的 ACTION 选项中所指定。
- 退房
- 已强制回退 UOW。 当 UOW 无法等待不确定解析 (例如,该事务可能已定义为 WAIT (NO)) 或已使用 CEMT SET UOW 命令回退) 时,将执行强制决策。
- HEURCOMMIT
- 已强制落实 UOW。
- INDOUBT
- 此 UOW 处于不确定状态。
- 正在进行中 (inflight)
- UOW 正在正常运行。
- USERID (数据区)
- 返回正在运行此事务的 8 字符用户标识。
- WAITCAUSE (cvda)
- 返回一个 CVDA 值,该值标识导致 UOW 等待或搁置的资源类型。注: 在等待的情况下,等待的是 UOW ,而不是任务。由于每个资源都需要正确类型的字段,因此 WAITCAUSE 还指示哪些字段包含 RESOURCE NAME 和 QUALIFIER。 CVDA 值如下:
- CONNECTION
- 由于在不确定时间段内与 UOW 的协调程序的会话失败,因此此 UOW 正在等待或已搁置。 NETNAME 和 SYSID 包含失败链路的网络名和系统名。
- DATASET
- 由于与一个或多个数据集关联的故障,此 UOW 正在等待或已搁置。 使用 INQUIRE UOWDSNFAIL 命令可识别所涉及的数据集及其导致 UOW 失败的原因。
- NOTAPPLIC
- UOW 未在等待。
- RLSSERVER
- 由于 RLS 服务器发生故障,此 UOW 正在等待或已搁置。
- WAITRRMS
- 由于与 RRS/MVS 失去通信,该 UOW 正在等待或已被分流。
- 等待沟通
- 由于落实处理期间发生故障,因此此 UOW 正在等待或已搁置。
- 等待目标
- 此 UOW 正在等待来自同步点中的参与者的 FORGET。 使用 INQUIRE UOWLINK 命令来获取参与者的网络名和 sysids。
- WAITRMI
- 此 UOW 正在等待来自 RMI 的 FORGET。 使用 INQUIRE UOWLINK 命令可获取与任务相关的用户出口的条目名称和限定符。
- WAITSTATE (cvda)
- 返回 CVDA 值,指示 UOW 当前正在运行还是正在等待。 CVDA 值如下:
- ACTIVE
- UOW 正在正常运行。
- SHUNTED
- 已延迟 UOW 的同步点处理。 在 WAITCAUSE 中返回了此原因。 SHUNTED 还指示已释放任务,终端和程序存储器,并且已保留锁定。
- 正在等待
- 同步点处理已在此系统上完成,但未在分布式 UOW 中涉及的所有系统上完成。 WAITCAUSE 返回 WAITFORGET 或 WAITRMI ,而 UOWSTATE 返回 BACKOUT 或 COMMIT 以指示如何在此系统上解析 UOW。
条件
- END
- RESP2 值:
- 2
- 已检索所有授权资源定义。 此命令上指定的所有数据区保持不变。
- ILLOGIC
- RESP2 值:
- 1
- 此资源类型的浏览已在进行中,或者尚未发出 INQUIRE UOW START 命令。
- NOTAUTH
- RESP2 值:
- 100
- 未授权使用此命令。
- 未找到
- RESP2 值:
- 1
- 找不到指定的 UOW。
