Skip to content
nicol edited this page Nov 18, 2024 · 13 revisions

Technical information

  • File Location : $USER_HOME/.magicDeskCompanion/pool/Hikari.conf
  • Category : POOL
  • Version : 6.2.1
  • Status : STABLE
  • Need Authenticator : No

Configure the plugin

Key Description Type Default Value Allowed Values
dataSource.prepStmtCacheSqlLimit Only for MYSQL/MariaDB dao. This is the maximum length of a prepared SQL statement that the driver will cache. The MySQL default is 256. In our experience, especially with ORM frameworks like Hibernate, this default is well below the threshold of generated statement lengths. Number 2048 Any value > 256
initializationFailTimeout his property controls whether the pool will "fail fast" if the pool cannot be seeded with an initial connection successfully. Any positive number is taken to be the number of milliseconds to attempt to acquire an initial connection; the application thread will be blocked during this period. If a connection cannot be acquired before this timeout occurs, an exception will be thrown.A value less than zero will bypass any initial connection attempt, and the pool will start immediately while trying to obtain connections in the backgroun Number 1 -1
0
1
validationTimeout This property controls the maximum amount of time that a connection will be tested for aliveness. This value must be less than the connectionTimeout. Lowest acceptable validation timeout is 250 ms. Number 5000 Any value > 250
dataSource.cachePrepStmts Only for MYSQL/MariaDB dao. Neither of the above parameters have any effect if the cache is in fact disabled, as it is by default. You must set this parameter to true. Boolean true true
false
readOnly This property controls whether Connections obtained from the pool are in read-only mode by default. Note some databases do not support the concept of read-only mode, while others provide query optimizations when the Connection is set to read-only. Whether you need this property or not will depend largely on your application and Boolean false true
false
registerMbeans This property controls whether or not JMX Management Beans ("MBeans") are registered or not. Boolean true true
false
isolateInternalQueries This property determines whether HikariCP isolates internal pool queries, such as the connection alive test, in their own transaction. Since these are typically read-only queries, it is rarely necessary to encapsulate them in their own transaction. This property only applies if autoCommit is disabled Boolean false true
false
leakDetectionThreshold This property controls the amount of time that a connection can be out of the pool before a message is logged indicating a possible connection leak. A value of 0 means leak detection is disabled.Lowest acceptable value for enabling leak detection is 2000 (2 seconds) Number 0 Any value between 0 and 3000
maxLifetime This property controls the maximum lifetime of a connection in the pool. An in-use connection will never be retired, only when it is closed will it then be removed. On a connection-by-connection basis, minor negative attenuation is applied to avoid mass-extinction in the pool. We strongly recommend setting this value, and it should be several seconds shorter than any database or infrastructure imposed connection time limit. A value of 0 indicates no maximum lifetime (infinite lifetime), subject of course to the idleTimeout setting. The minimum allowed value is 30000ms (30 seconds). Number 1800000 Any value > 30000
connectionInitSql his property sets a SQL statement that will be executed after every new connection creation before adding it to the pool. If this SQL is not valid or throws an exception, it will be treated as a connection failure and the standard retry logic will be followed Text
minimumIdle This property controls the minimum number of idle connections that HikariCP tries to maintain in the pool. If the idle connections dip below this value and total connections in the pool are less than maximumPoolSize, HikariCP will make a best effort to add additional connections quickly and efficiently. However, for maximum performance and responsiveness to spike demands, we recommend not setting this value and instead allowing HikariCP to act as a fixed size connection pool. Default: same as maximumPoolSize Number 10 Any value > 1
dataSource.useLocalSessionState Only for MYSQL/MariaDB dao. Should the driver refer to the internal values of auto-commit and transaction isolation that are set by 'Connection.setAutoCommit()' and 'Connection.setTransactionIsolation()' and transaction state as maintained by the protocol, rather than querying the database or blindly sending commands to the database for 'commit()' or 'rollback()' method calls Boolean true true
false
allowPoolSuspension This property controls whether the pool can be suspended and resumed through JMX. This is useful for certain failover automation scenarios. When the pool is suspended, calls to getConnection() will not timeout and will be held until the pool is resumed Boolean false true
false
idleTimeout his property controls the maximum amount of time that a connection is allowed to sit idle in the pool. This setting only applies when minimumIdle is defined to be less than maximumPoolSize. Idle connections will not be retired once the pool reaches minimumIdle connections. 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. The minimum allowed value is 10000ms (10 seconds) Number 600000 Any value > 10000
dataSource.cacheServerConfiguration Only for MYSQL/MariaDB dao. Should the driver cache the results of "SHOW VARIABLES" and "SHOW COLLATION" on a per-URL basis Boolean true true
false
maximumPoolSize This property controls the maximum size that the pool is allowed to reach, including both idle and in-use connections. Basically this value will determine the maximum number of actual connections to the database backend. A reasonable value for this is best determined by your execution environment. When the pool reaches this size, and no idle connections are available, calls to getConnection() will block for up to connectionTimeout milliseconds before timing out. Number 10 Any value > 1
autoCommit This property controls the default auto-commit behavior of connections returned from the pool. It is a boolean value. Boolean true true
false
connectionTimeout 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. Lowest acceptable connection timeout is 250 ms. Number 30000 true
false
dataSource.prepStmtCacheSize Only for MYSQL/MariaDB dao. This sets the number of prepared statements that the MySQL driver will cache per connection Number 250 Any value between 250 and 500
dataSource.useServerPrepStmts Only for MYSQL/MariaDB dao. Newer versions of MySQL support server-side prepared statements, this can provide a substantial performance boost Boolean true true
false
poolName This property represents a user-defined name for the connection pool and appears mainly in logging and JMX management consoles to identify pools and pool configurations Text mtg-hikari-pool true
false
Clone this wiki locally