您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

解析 INC 故障

如果协调器和辅助节点间的节点间通信 (INC) 已中断且返回错误,则您可能需要在重试 DML 命令前删除该连接。

背景信息

通过 INC 将从写入程序进程运行的 DML 命令作为协调器上的全局事务。重新启动协调器之后,从写入程序上同一连接启动全局事务的 DML 命令在 INC 恢复前可能会失败并显示以下错误:

示例代码 I. 12/20 10:12:36. 0000228231 Exception Thrown from dblib/db_catalog.cxx:824, Err# 5, tid 5 origtid 5I. 12/20 10:12:36. 0000228231 O/S Err#: 0, ErrID: 12291 (inc_CommandHandlerException); SQLCode: -1006274, SQLState: 'QBC74', Severity: 14I. 12/20 10:12:36. 0000228231 [22036]: Transaction cannot continue due to unrecoverable INC failure. Roll back current transaction.--dblib/db_catalog.xx 824

恢复 INC 后,写入程序上的 DML 命令可能会继续返回相同的错误。如果遇到此问题,请按如下操作。

过程

使用以下方法之一删除该连接: 选项说明DROP CONNECTION删除返回错误的客户端连接,或从连接到写入程序的客户端退出。sp_iqconnection在协调器上查找与以下条件匹配的连接并删除该连接。 示例代码 Name : IQ_MPX_SERVER_PxxxReqtype : EXECLastIQCmdTime : 0001-01-01 00.00.00.0ConnCreateTime : Time before ConnCreateTime of IQ_MPX_SERVER_H0 