@ -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.
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
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
[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
``jdbcUrl`` for "old-school" DriverManager-based JDBC driver configuration.
considers ``dataSourceClassName`` to be a superior method of creating connections compared to
*Default: none*
``jdbcUrl``, *but in the end either is fine*. *Default: none*
*or*
*or*
:abc:``jdbcUrl``<br/>
:abc:``jdbcUrl``<br/>
This property directs HikariCP to use "DriverManager-based" configuration. We feel that DataSource-based
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
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
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
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/>
:abc:``username``<br/>
This property sets the default authentication username used when obtaining *Connections* from
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/>
:white_check_mark:``autoCommit``<br/>
This property controls the default auto-commit behavior of connections returned from the pool.
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/>
:watch:``connectionTimeout``<br/>
This property controls the maximum number of milliseconds that a client (that's you) will wait
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
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/>
:watch:``idleTimeout``<br/>
This property controls the maximum amount of time (in milliseconds) that a connection is
This property controls the maximum amount of time that a connection is allowed to sit idle in the
allowed to sit idle in the pool. Whether a connection is retired as idle or not is subject
pool. Whether a connection is retired as idle or not is subject to a maximum variation of +30
to a maximum variation of +30 seconds, and average variation of +15 seconds. A connection
seconds, and average variation of +15 seconds. A connection will never be retired as idle *before*
will never be retired as idle *before*this timeout. A value of 0 means that idle connections
this timeout. A value of 0 means that idle connections are never removed from the pool.
are never removed from the pool. *Default: 600000 (10 minutes)*
*Default: 600000 (10 minutes)*
:watch:``maxLifetime``<br/>
:watch:``maxLifetime``<br/>
This property controls the maximum lifetime of a connection in the pool. When a connection
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
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
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
value of 0 indicates no maximum lifetime (infinite lifetime), subject of course to the