我目前正在将应用程序升级到SQL 2008/Server 2008 R2 x64,我看到一些奇怪的行为,我在SQL 2005/Server 2003.随机我从MSDTC得到一个异常:The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)
。请注意,我已启用网络交易而无需身份验证,并且这些交易在95%的时间内都可以工作。但随后一些人失败了,这是一个SQLBulkCopy对象,如果这是相关的。在SQL 2008/Server 2008 R2 x64上使用MSDTC事务异常HRESULT:0x8004D025
我已经调查了DTC统计信息,并且有趣的是当事务抛出这个异常时没有中止事务,但它记录了一个完成的事务。最让人感兴趣的是远程事务管理器也会创建一个新的事务(已提交状态)。第二次写入是成功写入数据库的事务的一部分,但第一次写入不成功。
在时序方面,当我看到这个错误发生了以下内容:
- 从表中删除(这工作)
- Bulkcopy在新行(这失败,引发异常的“ WriteToServer“方法)
- 创建写入发生的记录(这有效)。
我知道SQL和应用程序都已经为远程事务配置了MSDTC,因为几个事务可以成功工作。任何想法,为什么发生这种情况,我该如何解决它?
什么惊喜。重新启动这两台服务器,并且在100次交易之后我无法再现...感谢您用我本来应该做的事情把我放在头上。哦,至少对于下一个人来说,HRESULT存在一个问题。 – Spence 2011-04-04 05:11:51