Affects Version/s: 1.2, 1.2.1, 1.2.2, 1.3, 1.4
Fix Version/s: 2.0
CPDSConnectionFactory.validateObject(Object) catches and ignores Throwable, which is a bit excessive. For example:
close() can only throw SQLException, and that is all that should be ignored. In particular, ThreadDeath should never be ignored.
Same applies to KeyedCPDSConnectionFactory.
Basic[Managed]Datasource also catch Throwable, but rethrow it as SQLNestedException.
This is a bit better, but there's still the problem with ThreadDeath.