@ -78,19 +78,19 @@ This is the name of the ``DataSource`` class provided by the JDBC driver. Consu
documentation for your specific JDBC driver to get this class name, or see the [table](https://github.com/brettwooldridge/HikariCP#popular-datasource-class-names) below.
Note XA data sources are not supported. XA requires a real transaction manager like
[bitronix](https://github.com/bitronix/btm). Note that you do not need this property if you are using
``jdbcUrl`` for "old-school" DriverManager-based JDBC driver configuration. The HikariCP team
considers ``dataSourceClassName`` to be a superior method of creating connections compared to
``jdbcUrl``, *but in the end either is fine*. *Default: none*
``jdbcUrl`` for "old-school" DriverManager-based JDBC driver configuration.
*Default: none*
*or*
:abc:``jdbcUrl``<br/>
This property directs HikariCP to use "DriverManager-based" configuration. We feel that DataSource-based
configuration is superior for a variety of reasons (see below), but for many deployments there is
configuration (above) is superior for a variety of reasons (see below), but for many deployments there is
little significant difference. When using this property with "old" drivers, you may also need to set
the ``driverClassName`` property, but try it first without. Note that if this property is used, you may
still use *DataSource* properties to configure your driver and is in fact recommended over driver parameters
specified in the URL itself. *Default: none*
specified in the URL itself.
*Default: none*
:abc:``username``<br/>
This property sets the default authentication username used when obtaining *Connections* from
@ -116,19 +116,21 @@ skip this method entirely and call ``addDataSourceProperty("pass", ...)``, for e
:white_check_mark:``autoCommit``<br/>
This property controls the default auto-commit behavior of connections returned from the pool.
It is a boolean value. *Default: true*
It is a boolean value.
*Default: true*
:watch:``connectionTimeout``<br/>
This property controls the maximum number of milliseconds that a client (that's you) will wait
for a connection from the pool. If this time is exceeded without a connection becoming
available, a SQLException will be thrown. 100ms is the minimum value. *Default: 30000 (30 seconds)*
available, a SQLException will be thrown. 100ms is the minimum value.
*Default: 30000 (30 seconds)*
:watch:``idleTimeout``<br/>
This property controls the maximum amount of time (in milliseconds) that a connection is
allowed to sit idle in the pool. Whether a connection is retired as idle or not is subject
to a maximum variation of +30 seconds, and average variation of +15 seconds. A connection
will never be retired as idle *before*this timeout. A value of 0 means that idle connections
are never removed from the pool. *Default: 600000 (10 minutes)*
This property controls the maximum amount of time that a connection is allowed to sit idle in the
pool. Whether a connection is retired as idle or not is subject to a maximum variation of +30
seconds, and average variation of +15 seconds. A connection will never be retired as idle *before*
this timeout. A value of 0 means that idle connections are never removed from the pool.
*Default: 600000 (10 minutes)*
:watch:``maxLifetime``<br/>
This property controls the maximum lifetime of a connection in the pool. When a connection
@ -136,7 +138,8 @@ reaches this timeout, even if recently used, it will be retired from the pool.
connection will never be retired, only when it is idle will it be removed. We strongly
recommend setting this value, and using something reasonable like 30 minutes or 1 hour. A
value of 0 indicates no maximum lifetime (infinite lifetime), subject of course to the