Overview
This entry provides a clear explanation of how Ambience/Repertoire 202x and HikariCP records connection pool activity in the logs.
Building Configured Pool
- During startup, the server reads the pool definition from
application.conf. - It then logs
Building <pool name>to indicate that it is attempting to create the JDBC connection pool for that configuration. - This message ties directly to the pool name you configured (e.g.,
SportsCar) and is the primary reference for troubleshooting.
Example:
Building SportsCar
This confirms the server is working on the pool named SportsCar.
HikariPool Initialization
- Once the server begins building a pool, HikariCP assigns a sequential runtime identifier such as
HikariPool-1,HikariPool-2, etc. - This identifier is only an internal sequential runtime identifier used by HikariCP to distinguish one pool instance from another.
- These identifiers are generated in the order pools are initialized at runtime.
- The identifier appears in log entries that track the pool’s initialization stages, such as starting, adding connections, and completing startup.
- It is important to note that this label is temporary and internal, it does not represent a permanent datasource name or priority.
Example Log Sequence:
INFO ambience.etl.jdbc.ConnectionPool - Building SportsCar
INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection ConnectionID:1 ClientConnectionId: 5ad050a6-2a23-4be7-be6f-9c2d4a0d3619
INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
Here, SportsCar is the configured pool name, while HikariPool-1 is the runtime identifier assigned by HikariCP for that instance. The sequence shows the pool progressing through initialization until it is ready for use.
Successful Initialization
A successful initialization means the pool has been built, connections established, and the pool is available for the server. The log sequence confirms this by showing the pool starting, adding connections, and completing startup.
Failure Scenarios
If the database connection cannot be established, the pool will not be built. Logs may vary depending on the failure point, for example:
INFO ambience.etl.jdbc.ConnectionPool - Building SportsCar
INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
ERROR ambience.etl.jdbc.ConnectionPool Cannot build pool SportsCar
This indicates that the server attempted to build the configured pool SportsCar, but failed.
It is also important to note that Ambience/Repertoire 202x will log the attempt to connect to the database., but the message HikariPool-X Starting... alone does not confirm that the connection pool has been successfully established.
In some cases, you may see only the Building <pool name> log entry without the follow‑up HikariPool-X Starting..., this scenario can occur when connecting to the same server but targeting a different database.
Key Clarifications
- The configured pool name (e.g.,
SportsCar) is the main reference for identifying which pool is being built. - The
HikariPool-Xidentifier is only an internal runtime label tied to the initialization sequence. - These identifiers exist solely to help HikariCP distinguish pool instances during runtime and should not be treated as permanent mappings.