fixed onFatalError Recover

This commit is contained in:
agapple
2019-08-21 12:37:48 +08:00
parent 3943006477
commit f32d83d55e
2 changed files with 5 additions and 11 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.20_preview_08</version>
<version>1.1.20_preview_09</version>
<packaging>jar</packaging>
<name>druid</name>
@@ -1762,13 +1762,11 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat
lock.unlock();
}
if(holder != null && holder.getDataSource() != null) {
if(onFatalError && holder != null && holder.getDataSource() != null) {
ReentrantLock dataSourceLock = holder.getDataSource().lock;
dataSourceLock.lock();
try {
if (poolingCount < minIdle) {
emptySignal();
}
emptySignal();
}
finally {
dataSourceLock.unlock();
@@ -3001,12 +2999,8 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat
DruidConnectionHolder connection = connections[i];
if (onFatalError || fatalErrorIncrement > 0) {
if (lastFatalErrorTimeMillis > connection.lastActiveTimeMillis) {
keepAliveConnections[keepAliveCount++] = connection;
continue;
} else {
break;
}
keepAliveConnections[keepAliveCount++] = connection;
continue;
}
if (checkTime) {