[xa] client XAConnection.getConnection() does have the correct default
isolation level if set by an earlier connection obtained from the same
XAConnection
------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: DERBY-1044
URL: http://issues.apache.org/jira/browse/DERBY-1044
Project: Derby
Type: Bug
Components: Network Client
Versions: 10.1.2.3, 10.1.3.0, 10.2.0.0, 10.1.2.2
Reporter: Kathey Marsden
Fix For: 10.1.2.3, 10.1.3.0, 10.2.0.0
If the isolation level is set on a connection obtained with
XAConnection.getConnection() and then another connection is obtained from the
same XAConnection, then the isolation will not be the default READ_COMMITTED
but will be the isolation level set on the previous connection.
See this code in checkDataSource.java
I will add a reference to this bug
cs1 = xac.getConnection();
printState("new handle - local ", cs1);
cs1.close();
xar.start(xid, XAResource.TMJOIN);
cs1 = xac.getConnection();
cs1.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);
printState("pre-X1 commit - local", cs1);
xar.start(xid, XAResource.TMJOIN);
printState("pre-X1 commit - X1", cs1);
xar.end(xid, XAResource.TMSUCCESS);
printState("post-X1 end - local", cs1);
xar.commit(xid, true);
printState("post-X1 commit - local", cs1);
cs1.close();
System.out.println("Some more isolation testing using SQL and
JDBC api");
// The initial isolation level for this connection is
REPEATABLE_READ. Left over from the last connection.
// It should be READ_COMMITTED
cs1 = xac.getConnection();
s = cs1.createStatement();
printState("initial local", cs1);
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira