I agree with John's idiom of putting the close() call in a finally block.  I
think most people do it that way, which may be why this bug was never
uncovered before.

But I also think Anjan's right that this is a bug, and I've just corrected
the behavior and added a unit test that demonstrates.  (Actually, it was
really easy, we already had a flag called "_closed" in PoolableConnection
that told us whether or not the PoolableConnection was "active" or "idle" in
the pool. We just weren't using it in isClosed().)  

A current build from source, or the next nightly distribution should contain
the fix.

 - Rod

Reply via email to