[
https://issues.apache.org/jira/browse/DERBY-3404?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12569278#action_12569278
]
Knut Anders Hatlen commented on DERBY-3404:
-------------------------------------------
The failure in jdbc4.TestDbMetaData is actually a bug in
EmbedDatabaseMetaData40, see DERBY-3422. This bug has been hidden because
ResultSet.isClosed() previously returned false for a ResultSet that in fact had
been closed. When isClosed() correctly returned false, the test revealed that
there was a mismatch between the actual behaviour and what the meta-data said
the behaviour should be.
> EmbedResultSet.getString() returns wrong value after auto-commit with
> CLOSE_CURSORS_AT_COMMIT
> ---------------------------------------------------------------------------------------------
>
> Key: DERBY-3404
> URL: https://issues.apache.org/jira/browse/DERBY-3404
> Project: Derby
> Issue Type: Bug
> Affects Versions: 10.3.1.4, 10.3.2.1, 10.4.0.0
> Reporter: Knut Anders Hatlen
> Assignee: Knut Anders Hatlen
> Priority: Minor
> Attachments: CloseOnCommit.java, d3404-v1.diff, d3404-v1.stat
>
>
> The following code prints "null" to the console with the embedded driver:
> Statement s = c.createStatement(ResultSet.TYPE_FORWARD_ONLY,
> ResultSet.CONCUR_READ_ONLY,
> ResultSet.CLOSE_CURSORS_AT_COMMIT);
> ResultSet rs = s.executeQuery("select * from sysibm.sysdummy1");
> rs.next();
> c.createStatement().executeQuery("values 1").close(); // causes
> auto-commit
> System.out.println(rs.getString(1));
> The call to rs.getString() should perhaps have thrown SQLException, since the
> auto-commit between next() and getString() should close the ResultSet when
> the holdability is CLOSE_CURSORS_AT_COMMIT, I think. Anyway, the value stored
> in SYSIBM.SYSDUMMY1 is 'Y' and not NULL, so it should definitely not return
> null.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.