Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果ORA-02049包装在分布式事务中,“只需更改您的程序”的良好响应是什么?_Java_Oracle_Transactions_Jta_Distributed Transactions - Fatal编程技术网

Java 如果ORA-02049包装在分布式事务中,“只需更改您的程序”的良好响应是什么?

Java 如果ORA-02049包装在分布式事务中,“只需更改您的程序”的良好响应是什么?,java,oracle,transactions,jta,distributed-transactions,Java,Oracle,Transactions,Jta,Distributed Transactions,我有一个分布式事务包,比如说3个其他事务包。其中一个内部事务失败。阴险的事情是,外部事务和其他事务都很好,因为事务管理器首先从所有3个事务中获得成功。ORA-02049中的一个事务失败,并被正确回滚。但在整个系统中,系统处于不一致的状态,因为系统希望所有事务都能通过 数据库不在我们的控制之下,我们必须使用它。我们的客户机使用了一些愚蠢的非Oracle复制软件,这些软件首先要对错误负责 在我看来,期望我们以自动处理此类错误的方式设计系统是不合理的!你会如何回应这样的请求 如果一个事务管理器说它将提

我有一个分布式事务包,比如说3个其他事务包。其中一个内部事务失败。阴险的事情是,外部事务和其他事务都很好,因为事务管理器首先从所有3个事务中获得成功。ORA-02049中的一个事务失败,并被正确回滚。但在整个系统中,系统处于不一致的状态,因为系统希望所有事务都能通过

数据库不在我们的控制之下,我们必须使用它。我们的客户机使用了一些愚蠢的非Oracle复制软件,这些软件首先要对错误负责

在我看来,期望我们以自动处理此类错误的方式设计系统是不合理的!你会如何回应这样的请求

如果一个事务管理器说它将提交,那么实际上提交将通过,这是我们的错吗


您将如何处理这样一个问题?我们的整个软件期望数据库能够完美地工作?这是一个错误的假设吗?

我会让客户向第三方软件供应商提出一个错误。我会向客户说明问题是由他们的系统中的一个bug引起的。然后我会指出,他们有一个选择,要么等待第三方的bug修复,要么支付变更请求的费用,让您的软件代码绕过它


当然,如果你真的让他们为CR付费,这取决于你和公司关系等,但要明确这是额外的工作,而不是你的错。

我认为这样的事情更适合程序员。SEI已经将其标记到mods,如果他们同意,他们应该将其迁移过来。