[
https://issues.apache.org/jira/browse/TORQUE-111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Neil Weber updated TORQUE-111:
------------------------------
Description:
In the doSelect(), doDelete(), doInsert(), and doUpdate() methods in BasePeer a
database connection is obtained, some work performed, and then, if successful,
the work is committed and the database connection is closed. If a
TorqueException is thrown while performing the work, the work is rolled back
and the database connection is closed. If a RuntimeException is thrown while
performing the work, the work is *not* rolled back and the database connection
remains open.
The fix is simple: catch Exception (or Throwable) instead of TorqueException.
This will ensure that, no matter what the problem is, Torque ensures the
database connection is closed.
was:In the doSelect(), doDelete(), doInsert(), and doUpdate() methods in
BasePeer a database connection is obtained, some work performed, and then, if
successful, the work is committed and the database connection is closed. If a
TorqueException is thrown while performing the work, the work is rolled back
and the database connection is closed. If a RuntimeException is thrown while
performing the work, the work is *not* rolled back and the database connection
remains open.
Added solution.
> Thrown RuntimeExceptions cause database connections to remain open
> ------------------------------------------------------------------
>
> Key: TORQUE-111
> URL: https://issues.apache.org/jira/browse/TORQUE-111
> Project: Torque
> Issue Type: Bug
> Components: Runtime
> Affects Versions: 3.2, 3.3
> Reporter: Neil Weber
> Priority: Critical
> Original Estimate: 0.25h
> Remaining Estimate: 0.25h
>
> In the doSelect(), doDelete(), doInsert(), and doUpdate() methods in BasePeer
> a database connection is obtained, some work performed, and then, if
> successful, the work is committed and the database connection is closed. If
> a TorqueException is thrown while performing the work, the work is rolled
> back and the database connection is closed. If a RuntimeException is thrown
> while performing the work, the work is *not* rolled back and the database
> connection remains open.
> The fix is simple: catch Exception (or Throwable) instead of TorqueException.
> This will ensure that, no matter what the problem is, Torque ensures the
> database connection is closed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]