[
https://issues.apache.org/jira/browse/DERBY-3806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12618432#action_12618432
]
Kristian Waagan commented on DERBY-3806:
----------------------------------------
Just a few initial questions. If feasible in your application environment, can
you try any of the suggestions below?
a) If you swap 4 and 5, do you still get the exception?
b) Do you have any result sets open at point 5? Default holdability in Derby
is HOLD_CURSORS_OVER_COMMIT. Does the exception go away if you change
holdability to CLOSE_CURSORS_AT_COMMIT?
c) What happens if you close all open result sets, but not the statements,
before point 4?
Thanks for the report.
> java.sql.SQLException: Cannot close a connection while a transaction is still
> active thrown on Connection.close
> ---------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-3806
> URL: https://issues.apache.org/jira/browse/DERBY-3806
> Project: Derby
> Issue Type: Bug
> Components: JDBC
> Affects Versions: 10.4.1.3
> Environment: All operating systems
> Reporter: Nathan Boy
>
> java.sql.SQLException: Cannot close a connection while a transaction is still
> active is being thrown when I am closing a transaction after committing.
> This does not happen for all transactions, and so far I have been unable to
> figure out why it happens for this particular one. The steps the program is
> taking are as follows:
> 1 - Get a connection to the embedded database
> 2 - Set autocommit to false
> 3 - Execute a number of statements and prepared statements
> 4 - Commit
> 5 - Close all prepared statements
> 6 - Close the connection
> The exception is being thrown when the actual Connection.close() method is
> invoked.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.