Hello all,
I'm a bit confused about the 'Patch available' flag. I believed it was
not supposed to be unset when a patch was committed, unless the patch
was partial.
I also thought the filter that has been created for finding issues ready
to review/commit filtered on status, so that some care should be taken
to verify and close completed issues rather quickly.
Can someone repeat the guidelines for the 'Patch available' flag for me?
thanks,
--
Kristian
Andreas Korneliussen (JIRA) wrote:
[ http://issues.apache.org/jira/browse/DERBY-1295?page=all ]
Andreas Korneliussen resolved DERBY-1295:
-----------------------------------------
Resolution: Fixed
Derby Info: [Existing Application Impact, Release Note Needed] (was:
[Patch Available, Existing Application Impact, Release Note Needed])
Committed revision 412831.
Result sets of type TYPE_SCROLL_INSENSITIVE should not implicitly close due to
positioning in autocommit mode
-------------------------------------------------------------------------------------------------------------
Key: DERBY-1295
URL: http://issues.apache.org/jira/browse/DERBY-1295
Project: Derby
Type: Bug
Components: JDBC
Versions: 10.2.0.0
Reporter: Dag H. Wanvik
Assignee: Fernanda Pizzorno
Priority: Minor
Fix For: 10.2.0.0
Attachments: Main.java, derby-1295.diff, derby-1295.stat, derby-1295v2.diff,
derby-1295v2.stat, derby-1295v3.diff, derby-1295v3.stat
The new JDBC 4 specification allows implementations to automatically
close result sets of type FORWARD_ONLY when ResultSet#next returns
false:
(quote from JDBC preliminary spec):
16.2.5 Closing a ResultSet Object
:
NOTE: Some JDBC driver implementations may also implicitly close the
ResultSet when the ResultSet type is TYPE_FORWARD_ONLY and the next
method of ResultSet returns false.
This implies that other result set type are not free to do this.
Currently, Derby will also implicitly close result sets of type
TYPE_SCROLL_INSENSITIVE, if autocommit is enabled.
Quote from Derby Developer's Guide, subsection "Using autocommit":
Using auto-commit
A new connection to a Derby database is in auto-commit mode by
default, as specified by the JDBC standard. Auto-commit mode means
that when a statement is completed, the method commit is called on
that statement automatically. Auto-commit in effect makes every SQL
statement a transaction. The commit occurs when the statement
completes or the next statement is executed, whichever comes
first. In the case of a statement returning a ResultSet , the
statement completes when the last row of the ResultSet has been
****************************************
retrieved or the ResultSet has been closed explicitly.
This seems to indicate that result set always closes when the last row
has been seen, however, it seems the implementation only does this
when autocommit is enabled. I will attach a repro.
Anyway, this should be corrected for JDBC4 compliancy. Scrollable
result sets should never close implicitly due to positioning,
autocommit or not.