db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-2620) embedded throws SQLState 8003 (No current connection) on rs.next() on closed resultSet in test for DERBY-1025 in DataSourceTest
Date Tue, 15 Feb 2011 17:31:57 GMT

     [ https://issues.apache.org/jira/browse/DERBY-2620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Rick Hillegas updated DERBY-2620:
---------------------------------

    Issue & fix info: [Repro attached]
              Labels: derby_triage10_8  (was: )

> embedded throws SQLState 8003 (No current connection) on rs.next() on closed resultSet
in test for DERBY-1025 in DataSourceTest
> -------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-2620
>                 URL: https://issues.apache.org/jira/browse/DERBY-2620
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.3.1.4
>            Reporter: Kathey Marsden
>              Labels: derby_triage10_8
>
> The following code checking that a CLOSE_CURSORS_AT_COMMIT ResultSet is closed by xa_start
 throws the wrong exception for embedded, indicating that there is no current connection instead
of the ResultSet  being closed.
>    Statement s4 = conn4.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY,
ResultSet.CLOSE_CURSORS_AT_COMMIT);
>         ResultSet rs4 = s4.executeQuery("select i from autocommitxastart");
>         rs4.next();
>         assertEquals(1, rs4.getInt(1));
>         rs4.next();
>         assertEquals(2, rs4.getInt(1));
>         // XAResource().start should commit the transaction
>         try {
>             xac4.getXAResource().start(xid4a, XAResource.TMNOFLAGS);
>             xac4.getXAResource().end(xid4a, XAResource.TMSUCCESS);
>         } catch (XAException xae) {
>             fail("unexpected XAException on xac4.getXAResource.start or end");
>         } catch (Exception e) {
>             fail("unexpected Exception on xac4.getXAResource.start or end");
>         }
>         
>         // DERBY-1025.
>         // With Embedded, this will give error: 08003 - No current connection
>         // But with NetworkServer / DerbyNetClient, the transaction does not
>         // appear to be closed, and we actually get a value.
>         try {
>             rs4.next();
>             rs4.getInt(1);            
>             fail ("expected an exception indicating resultset is closed.");
>         } catch (SQLException sqle) {
>             // Embedded gets 08003.
>         	if (usingDerbyNetClient())
>         		assertSQLState("XCL16",sqle);
>         }

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message