In DBCP-595, a change is suggested to force close connections when a fatal SQL exception has occurred. As of Version 2.2 of DBCP, fatal exceptions are tracked and the fastFailValidation property can be set to fast fail validations when a fatal exception has occurred on a connection. This change would obsolete that property, as it would make the pool close the connection immediately.
I see two pros for this change and one con. Pros: 0) Bad connection is destroyed immediately 1) Works when validation is turned off Con: Incorrect SQL states returned by drivers or transient failures may cause over-zealous purging of connections. I vaguely recall the "Con" as the reason why we implemented fastFailValidation instead of direct close on these failures, but I can't find the discussion in the archives. Phil