Uploaded image for project: 'Commons DBCP'
  1. Commons DBCP
  2. DBCP-391

Close on invalid connections throws unexpected exception

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.2.2, 1.3, 1.4
    • 1.5.1, 2.0
    • None

    Description

      If the underlying connection of a PoolableConnection becomes invalid due to network errors etc., it is not possible to remove it from the pool by using the close-strategy. In case of an exception I'd check if the connection is already closed (=returned to pool). If not I'd close it to return it to the pool.

      Two problems:

      • The method isClosed() returns true, even if the PoolableConnection has not the _closed state because of _conn.isClosed() returns true. The defective connection remains active, consuming connections.
      • The method close throws an SQLException ("already closed") if (and only if) the underlying connection is closed. If the PoolableConnection is in _closed state, close() returns silently (as expected)

      Attachments

        Activity

          People

            Unassigned Unassigned
            mstier Markus Stier
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: