对于SAP Sybase IQ 16,在Multiplex写节点上运行的DML全局读写事物当协调节点和写节点之间的网络(INC连接)临时故障或者协调节点失败(shutdown或failover)时,交易不会回滚(先前的版本是全局事物回滚),而是可以挂起等待协调节点或网络通讯恢复。
协调节点失败转移后,客户端重连接到新的协调节点,同时全局的挂起交易自动恢复执行。当一个用户连接到一个写节点并且针对共享IQ数据库对象执行读写DMLs命令时,写节点会在协调节点上开始开始一个全局事物。这个全局事物通过写节点到协调节点之间的内部INC连接启动,并且通过这个INC连接进行信息的传递。
例如,在共享数据库对象上的INSERT或LOAD命令会开始全局事物。如果一个失败发生,那么全局事物和相应INC连接被挂起。
如果一个临时故障在一个用户定义的"时间周期"内得以解决,那么全局事物继续执行,就好像故障没有发生一样。用户能够提交、回滚或继续事物操作。使用数据库选项 MPX_LIVENESS_TIMEOUT 可以设置这个"时间周期(timeout period)",它的缺省值时3600秒,即1小时。如果失败持续时间超过了用户定义的"时间周期",那么全局事物将不能恢复,并且用户必须回滚整个事物。
为了检查连接状态(活动或挂起),在写节点上执行sp_iqconnection系统存储过程或在协调节点上执行sp_iqmpxsuspendedconninfo系统存储过程。运行sp_iqmpxincstatistics系统存储过程可以查看自IQ Server启动以来INC的聚集统计信息的快照。
注意:这个特性不会影响初始在协调节点上启动的事物。
阅读(1777) | 评论(0) | 转发(0) |