Issue Details (XML | Word | Printable)

Key: JDBC-362
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Mark Rotteveel
Reporter: Doychin Bondzhev
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Jaybird JCA/JDBC Driver

Can't use Jaybird with distributed transactions. Calling close on a connection triggers exception

Created: 18/Sep/14 12:59 PM   Updated: 30/Dec/14 12:00 PM
Component/s: JDBC driver
Affects Version/s: Jaybird 2.2.5
Fix Version/s: Jaybird 2.2.6, Jaybird 3.0.0

Environment: JBoss 4.2.3, Java 7, Jaybird 2.2.5
Issue Links:
Relate
 


 Description  « Hide
When a connection is requested from a datasource and later that connection is closed an exception is thrown

Caused by: org.firebirdsql.jdbc.FBSQLException: Connection enlisted in distributed transaction
at org.firebirdsql.jdbc.AbstractConnection.setAutoCommit(AbstractConnection.java:436)
at org.firebirdsql.jdbc.AbstractConnection.close(AbstractConnection.java:566)

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Mark Rotteveel added a comment - 21/Sep/14 04:17 PM
It looks like I broke this when fixing JDBC-344. The current expectation of the close() method is "// autocommit is always true for managed tx.", but that is no longer true.

I also need to review the tests as it looks like this only happens when using distributed transactions with the JCA resource adapter instead of a JDBC XADataSource, and that combination doesn't seem to be covered in the tests.

Mark Rotteveel added a comment - 17/Nov/14 09:12 PM
Commited a test to reproduce this, and a fix to 2.2.6 and 3.0