[FEATURE] HikariCP выключен по умолчанию

This commit is contained in:
Gravit 2019-03-12 15:08:51 +07:00
parent 96254b11ea
commit f157e9c01f
No known key found for this signature in database
GPG key ID: 061981E1E85D3216

View file

@ -31,6 +31,7 @@ public final class MySQLSourceConfig implements AutoCloseable {
private String password;
private String database;
private String timeZone;
private boolean enableHikari;
// Cache
private transient DataSource source;
@ -79,20 +80,24 @@ public synchronized Connection getConnection() throws SQLException {
hikari = false;
// Try using HikariCP
source = mysqlSource;
try {
Class.forName("com.zaxxer.hikari.HikariDataSource");
hikari = true; // Used for shutdown. Not instanceof because of possible classpath error
HikariConfig cfg = new HikariConfig();
cfg.setDataSource(mysqlSource);
cfg.setPoolName(poolName);
cfg.setMaximumPoolSize(MAX_POOL_SIZE);
// Set HikariCP pool
// Replace source with hds
source = new HikariDataSource(cfg);
LogHelper.warning("HikariCP pooling enabled for '%s'", poolName);
} catch (ClassNotFoundException ignored) {
LogHelper.debug("HikariCP isn't in classpath for '%s'", poolName);
if(enableHikari)
{
try {
Class.forName("com.zaxxer.hikari.HikariDataSource");
hikari = true; // Used for shutdown. Not instanceof because of possible classpath error
HikariConfig cfg = new HikariConfig();
cfg.setDataSource(mysqlSource);
cfg.setPoolName(poolName);
cfg.setMaximumPoolSize(MAX_POOL_SIZE);
// Set HikariCP pool
// Replace source with hds
source = new HikariDataSource(cfg);
LogHelper.warning("HikariCP pooling enabled for '%s'", poolName);
} catch (ClassNotFoundException ignored) {
LogHelper.debug("HikariCP isn't in classpath for '%s'", poolName);
}
}
}
return source.getConnection();
}