The lastest release of Agroal is here. Amongst the biggest changes are the way connections are created that was changed to allow parallel creation. Another noteworthy change is a fast flush when there is a validation failure.
New features include configuration for the retries on connection creation and new settings to control network timeouts.
There are also a number of bug fixes related with concurrent transaction timeouts, including AG-300 that was backported to 3.0, 2.8 and 2.7 branches.
This version had contributions from Dennis Kniep, Ronald Milk and Marco Sappe Griot.
Feature Request
- AG-293 Add support for connection establishment retries
- AG-296 Add network timeout setting
- AG-299 Add option to add interceptors to connection pool through spring configuration
Enhancement
- AG-290 Create connections on the calling thread
- AG-294 Improve StampedCopyOnWriteArrayList
- AG-295 Encapsulate state transitions in ConnectionHandler
- AG-302 Flush all idle connections on first validation failure to speed up recovery after DB failover
- AG-305 Use Connection.setNetworkTimeout as a hard backstop in sqlValidator
- AG-306 Rename MultipleAcquisitionAction.OFF to LENIENT for clarity
Bug
- AG-287 Exhausted connections during periodic recovery process
- AG-288 Impossible to set login timeout when using AgroalDataSource
- AG-298 Spring Boot health check database entry is always UNKNOWN even for correctly configured datasources
- AG-300 Synchronization issues with Narayana Transaction Reaper thread
- AG-304 Fix interleaving issue with the Narayana reaper thread
