当关闭我的项目的基于WebSphere的JavaEE应用程序时,分布式事务有时在SQLServer 2005数据库中保持活动状态。这些永远保留他们的锁,必须手动杀死。它们一般在this very good article中描述。
本文讨论了事务协调器如何无法协调分布式事务参与者,因此标记了进程ID为-2的事务。
鉴于我们很少得到这个问题,但是当我们关闭应用程序时总会发生这种情况,我不相信这是MSDTC的失败。它更可能与WebSphere有关,以及它如何终止应用程序。
我想测试一下。但我无法可靠地实现它。
有没有办法强制MSDTC孤立SQLServer分布式事务?
答案 0 :(得分:0)
我的问题是误导性的,因为我不太确定问题到底是什么。我怀疑MSDTC正在协助WebSphere与MQ和SQLServer进行交易。当我们执行WAS服务器的不正常关闭并且我们的应用程序的供应商提供的部分尝试进行某种清理并失败时,会出现问题。
我怀疑这个问题对其他任何人都没有帮助(除非他们在Windows上使用WebSphere中的Misys消息管理器)所以,亲爱的读者,道歉,浪费你的时间。