From 316ebb878450a9cbe34cae91790b9adc259b6984 Mon Sep 17 00:00:00 2001 From: XenoAmess Date: Sun, 10 Oct 2021 05:03:24 +0800 Subject: [PATCH] int overflow. --- .../pool/ha/selector/RandomDataSourceRecoverThread.java | 4 ++-- .../pool/ha/selector/RandomDataSourceValidateThread.java | 6 +++--- .../pool/ha/selector/StickyRandomDataSourceSelector.java | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceRecoverThread.java b/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceRecoverThread.java index b2a1358756..10b455eefd 100644 --- a/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceRecoverThread.java +++ b/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceRecoverThread.java @@ -83,7 +83,7 @@ public class RandomDataSourceRecoverThread implements Runnable { if (validationSleepSeconds > 0) { try { LOG.debug("Sleep " + validationSleepSeconds + " second(s) before validation."); - Thread.sleep(validationSleepSeconds * 1000); + Thread.sleep(validationSleepSeconds * 1000L); } catch (InterruptedException e) { // ignore } @@ -92,7 +92,7 @@ public class RandomDataSourceRecoverThread implements Runnable { private void sleep() { try { - Thread.sleep(recoverIntervalSeconds * 1000); + Thread.sleep(recoverIntervalSeconds * 1000L); } catch (InterruptedException e) { // ignore } diff --git a/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceValidateThread.java b/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceValidateThread.java index ad5de28105..c691267da6 100644 --- a/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceValidateThread.java +++ b/core/src/main/java/com/alibaba/druid/pool/ha/selector/RandomDataSourceValidateThread.java @@ -100,7 +100,7 @@ public class RandomDataSourceValidateThread implements Runnable { try { LOG.debug("[RandomDataSourceValidateThread@" + hashCode() + "] Sleep " + newSleepSeconds + " second(s) until next checking."); - Thread.sleep(newSleepSeconds * 1000); + Thread.sleep(newSleepSeconds * 1000L); } catch (InterruptedException e) { // ignore } @@ -213,8 +213,8 @@ public class RandomDataSourceValidateThread implements Runnable { LOG.debug("DataSource=" + name + ", lastSuccessTime=" + lastSuccessTime + ", lastCheckTime=" + lastCheckTime + ", currentTime=" + currentTime); return lastSuccessTime != null && lastCheckTime != null - && (currentTime - lastSuccessTime) <= checkingIntervalSeconds * 1000 - && (currentTime - lastCheckTime) <= 5 * checkingIntervalSeconds * 1000 + && (currentTime - lastSuccessTime) <= checkingIntervalSeconds * 1000L + && (currentTime - lastCheckTime) <= checkingIntervalSeconds * 1000L * 5 && (!errorCounts.containsKey(name) || errorCounts.get(name) < 1); } diff --git a/core/src/main/java/com/alibaba/druid/pool/ha/selector/StickyRandomDataSourceSelector.java b/core/src/main/java/com/alibaba/druid/pool/ha/selector/StickyRandomDataSourceSelector.java index 7e4ba0f008..635a13c2ec 100644 --- a/core/src/main/java/com/alibaba/druid/pool/ha/selector/StickyRandomDataSourceSelector.java +++ b/core/src/main/java/com/alibaba/druid/pool/ha/selector/StickyRandomDataSourceSelector.java @@ -78,7 +78,7 @@ public class StickyRandomDataSourceSelector extends RandomDataSourceSelector { } private boolean isExpired(StickyDataSourceHolder holder) { - return System.currentTimeMillis() - holder.getRetrievingTime() > expireSeconds * 1000; + return System.currentTimeMillis() - holder.getRetrievingTime() > expireSeconds * 1000L; } public int getExpireSeconds() {