You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "John Hendrikx (JIRA)" <ji...@apache.org> on 2012/09/11 13:06:08 UTC
[jira] [Comment Edited] (DERBY-5545) Exception ResultSet not open.
Operation 'next' not permitted. Verify that autocommit is OFF exception
occuring on rs.next() after long run.
[ https://issues.apache.org/jira/browse/DERBY-5545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13452909#comment-13452909 ]
John Hendrikx edited comment on DERBY-5545 at 9/11/12 10:05 PM:
----------------------------------------------------------------
I read the mailing list reply, and I disagree.
rollback() != rollback(Savepoint)
rollback -> rolls back to entire transaction
rollback(Savepoint) -> rolls back only the statements since the savepoint was created -- any statements before that are unaffected
Rolling back a savepoint should have no influence on the transaction itself, as otherwise there is no point in using them -- after all, they are there so you can rollback *part* of your sequence of SQL statements so you can *continue* with further SQL statements. This code also functions correctly when I replace the database with PostgreSQL -- it does not close the outer ResultSet after rolling back a save point.
EDIT: Corrected confusing terminology
was (Author: john16384):
I read the mailing list reply, and I disagree.
rollback != releaseSavepoint
rollback -> rolls back to entire transaction
releaseSavepoint -> rolls back only the statements since the savepoint was created -- any statements before that are unaffected
Rolling back a savepoint should have no influence on the transaction itself, as otherwise there is no point in using them -- after all, they are there so you can rollback *part* of your sequence of SQL statements so you can *continue* with further SQL statements. This code also functions correctly when I replace the database with PostgreSQL -- it does not close the outer ResultSet after rolling back a save point.
> Exception ResultSet not open. Operation 'next' not permitted. Verify that autocommit is OFF exception occuring on rs.next() after long run.
> --------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-5545
> URL: https://issues.apache.org/jira/browse/DERBY-5545
> Project: Derby
> Issue Type: Bug
> Components: JDBC
> Affects Versions: 10.8.2.2
> Environment: OSX 10.6
> Reporter: Paul taylor
> Labels: derby_triage10_9
>
> Im seeing this error occur after loading alot of data into the Database. I can confirm that autocommit is set to off, and that it occurs on calling rs.next() immediatlely after running a query and assigning to resultset rs. The cdoe is called many times (250,000) and usually works, then suddenly it starts going wrong, I also using c3po database pooling. Im wondering if the problem is linked to memory consumption although I have no OutOfMemoryError occurring
>
> Java.sql.SQLException: ResultSet not open. Operation 'next' not permitted. Verify that autocommit is OFF.
> at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.ConnectionChild.newSQLException(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedResultSet.checkIfClosed(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedResultSet.checkExecIfClosed(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(Unknown Source)
> at org.apache.derby.impl.jdbc.EmbedResultSet.next(Unknown Source)
> at com.mchange.v2.c3p0.impl.NewProxyResultSet.next(NewProxyResultSet.java:2859)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira