diff --git a/src/main/java/com/zaxxer/hikari/metrics/PoolStats.java b/src/main/java/com/zaxxer/hikari/metrics/PoolStats.java index 46d8986d..3f1e5e22 100644 --- a/src/main/java/com/zaxxer/hikari/metrics/PoolStats.java +++ b/src/main/java/com/zaxxer/hikari/metrics/PoolStats.java @@ -38,7 +38,7 @@ public abstract class PoolStats public PoolStats(final long timeoutMs) { this.timeoutMs = timeoutMs; - this.reloadAt = new AtomicLong(0); + this.reloadAt = new AtomicLong(); this.clock = ClockSource.INSTANCE; } diff --git a/src/main/java/com/zaxxer/hikari/pool/PoolBase.java b/src/main/java/com/zaxxer/hikari/pool/PoolBase.java index 402d8d7e..99023de4 100644 --- a/src/main/java/com/zaxxer/hikari/pool/PoolBase.java +++ b/src/main/java/com/zaxxer/hikari/pool/PoolBase.java @@ -67,14 +67,14 @@ abstract class PoolBase this.config = config; this.networkTimeout = -1; - this.catalog = config.getCatalog(); + this.catalog = config.getCatalog() == null || config.getCatalog().isEmpty() ? null : config.getCatalog(); this.isReadOnly = config.isReadOnly(); this.isAutoCommit = config.isAutoCommit(); this.transactionIsolation = UtilityElf.getTransactionIsolation(config.getTransactionIsolation()); this.isQueryTimeoutSupported = UNINITIALIZED; this.isNetworkTimeoutSupported = UNINITIALIZED; - this.isUseJdbc4Validation = config.getConnectionTestQuery() == null; + this.isUseJdbc4Validation = config.getConnectionTestQuery() == null || config.getConnectionTestQuery().isEmpty(); this.isIsolateInternalQueries = config.isIsolateInternalQueries(); this.poolName = config.getPoolName(); diff --git a/src/main/java/com/zaxxer/hikari/util/ConcurrentBag.java b/src/main/java/com/zaxxer/hikari/util/ConcurrentBag.java index a20d4c3d..9c567275 100644 --- a/src/main/java/com/zaxxer/hikari/util/ConcurrentBag.java +++ b/src/main/java/com/zaxxer/hikari/util/ConcurrentBag.java @@ -94,7 +94,7 @@ public class ConcurrentBag implements AutoCloseab this.listener = listener; this.weakThreadLocals = useWeakThreadLocals(); - this.waiters = new AtomicInteger(0); + this.waiters = new AtomicInteger(); this.sharedList = new CopyOnWriteArrayList<>(); this.synchronizer = new QueuedSequenceSynchronizer(); if (weakThreadLocals) { diff --git a/src/main/java/com/zaxxer/hikari/util/UtilityElf.java b/src/main/java/com/zaxxer/hikari/util/UtilityElf.java index 65fa7c45..af03fbf5 100644 --- a/src/main/java/com/zaxxer/hikari/util/UtilityElf.java +++ b/src/main/java/com/zaxxer/hikari/util/UtilityElf.java @@ -115,7 +115,7 @@ public final class UtilityElf */ public static int getTransactionIsolation(final String transactionIsolationName) { - if (transactionIsolationName != null) { + if (transactionIsolationName != null && !transactionIsolationName.isEmpty()) { try { final String upperName = transactionIsolationName.toUpperCase(); if (upperName.startsWith("TRANSACTION_")) {