启发式结束事务时执行的操作

运行 onmode -Z 时,您指示 onmode 实用程序从事务表中除去了位于指定地址的参与者事务条目。

逻辑日志中写入了两条记录以记载该操作。 记录类型为 ROLLBACK 和 ENDTRANS,或如果事务已经启发式回滚,那么仅有类型 ENDTRANS。以下消息写入参与者数据库服务器消息日志:
(time_stamp) Transaction Completed Abnormally (endtx): tx=address flags:0xnn user username tty ttyid

协调者接收来自发生了 onmode -Z 的参与者的错误消息以作为其对 COMMIT 指令的响应。协调者查询参与者数据库服务器,该服务器不再有有关事务的消息。参与者数据库服务器上缺少事务表条目就表明事务已落实。 协调者假设参与者已发送确认消息,但由于某种原因未接收到该消息。因为协调者不知道此参与者的工作片段未落实,所以未生成指示全局事务不一致实现的消息。只有运行 onmode -Z 命令的管理员才会知道实现不一致。