Oracle集群ODP.net分布式事务协调器数据丢失

时间:2013-12-17 20:07:02

标签: asp.net .net oracle11g odp.net msdtc

这是通过ODP.net和分布式事务协调器/ MSDTC使用Oracle集群的ASP.NET 4.0应用程序。在System.Transactions.TransactionScope事务中,它将数据保存在两个不同的数据库(db1和db2)中。仅当两个保存操作都成功时,它才会提交事务。

直到星期一一直工作正常。现在发生间歇性,一旦ASP.NET请求完成,数据就会从一个数据库中删除(db1 - 保存操作调用成功),但另一个数据库(db2)具有与此请求关联的数据。它间歇性地发生,一些时间数据保存在两个数据库中,而一些时间只保存在一个数据库中(db2)。没有记录任何异常。

仅在服务器上更改是安装ODP.NET 11.2.3。

任何想法可能是什么原因?

1 个答案:

答案 0 :(得分:0)

我们遇到了DTC问题以及11.2.3。你遇到的问题不一样,但是一个巨大的问题。我们得到了“ORA-24776:无法启动新事务”Oracle负载繁重的错误。数据库中没有记录错误,并且进程跟踪证明无益。除了从10g到11g数据库的数据库更新之外,没有任何代码更改。我们使用的11.2.3 ODP驱动程序与Oracle 10g完美配合。当我们将数据库更新到11g时就是所有错误都开始了。我搜索并调试了一个月。我发现停止此操作的唯一一件事是更新到1月14日发布的11.2.4。此版本只有X-copy部署,奇怪的是没有针对此特定更新的发行说明。我们联系了甲骨文,找到了他们在此版本中修复的内容,但他们迄今未能做出回应。 我知道这是一个较旧的帖子,我希望这有帮助!