BoneCP v0.7.1 has been released to maven central repo.
This version contain plenty of new features but is mostly a maintenance release and is thus a recommended upgrade.
185 unit tests, 100% branch code coverage.
Maven artifact version: v0.7.1.RELEASE
Changes since 0.7.0:
+ Several statistics enhancements
+ OSGi fixes
+ Allow datasource getConnection(username, password)
+ Recognize new postgresql SQLstate to trigger a pool restart
+ Added config option externalAuth to obtain connections without passing in username/password directly.
+ Allow customization hook of what is considered a broken connection
+ Allow max connections == 1
+ Add pool name to unclosed connection warning
+ Keep original exception for jdk6+ users
+ Publish to maven central
+ add defaultReadonly, defaultAutoCommit, defaultTransactionIsolation, etc
+ Add overloaded methods for BoneCPConfig to allow for specification of TimeUnit
+ Connection Tester Thread modifications to allow independant idleMaxAge/idleconnectionTestPeriod
+ Grab SQLExceptions only
+ Consider sqlState 08s01 as a db failure now
+ Use correct ExecutorService for connection max age
+ Use object equality instead of field equality. equals() has been renamed to hasSameConfiguration instead.
+ Remove thread-locals when storing statements
+ Don't fill batch SQL if connection hook is configured
+ Fix for false statementCache warning that statement isn't closed when releaseHelper + statementCache + closeConnectionWatch is configured.
+ Fix for potential race condition
+ Handle close properly in cache
+ Fix for cache.putIfAbsent
+ If we failed but still replaced connection, keep track of that
+ Be less strict on what to consider as a connection failure
+ Start tracking connection and incrementing creation count before the connection is given out
+ If driverProperties doesn't contain username/pass settings but config username does, keep them in sync
+ Allow connectionMaxAge thread to utilize lifo mode correctly
+ Stop monitoring this connection if it has been returned to the pool
+ Pass in lifo/fifo mode to connecitonMaxAge param
+ On connection destroy, remove from finalizable ref queue even if thread is still alive
+ If transaction replay blows up, throw the unwrapped exception
+ MemoritzeTransaction: InvocationTargetException fix
+ Guard logger statements
+ Use a nicer debug message clearer when a datasource ben is in use
+ Fix acquireRetryAttempts off-by-one error
+ Rename XXX -> xxxinSeconds/Minutes/etc
+ defaultTransactionIsolation: Read committed --> read_committed
+ Don't start connection testing thread right away
+ Make config retain connectionTimeout value set to 0 as 0 instead of Long.MAX