Distributed transaction fails with "ORA-01013: user requested cancel of current operation" in EAP 6
Issue
- Two servers are used in a distributed transaction
- The transaction coordinator timeout on both servers is set to a large value (e.g. 300 seconds / 5 minutes)
- An Oracle datasource pool is configured with
set-tx-query-timeoutset totrue - A transaction begun on server 1 propagates to server 2 where a database operation fails immediately with
ORA-01013
java.sql.SQLException: ORA-01013: user requested cancel of current operation
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:194)
at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:853)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1145)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1259)
at oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1882)
at oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1847)
at oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:301)
at org.jboss.jca.adapters.jdbc.WrappedStatement.execute(WrappedStatement.java:157)
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.2.4
- 6.3.x
- 6.4.x through 6.4.4
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
