optimizer fail-fast

This commit is contained in:
agapple
2016-05-29 23:05:39 +08:00
parent 408a359616
commit 8c3cdb991f
3 changed files with 41 additions and 23 deletions
@@ -37,6 +37,7 @@ import java.util.Properties;
import java.util.Set;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.ReentrantLock;
@@ -247,6 +248,7 @@ public abstract class DruidAbstractDataSource extends WrapperAdapter implements
private boolean asyncCloseConnectionEnable = false;
protected int maxCreateTaskCount = 3;
protected boolean failFast = false;
protected AtomicBoolean failContinuous = new AtomicBoolean(false);
protected ScheduledExecutorService destroyScheduler;
protected ScheduledExecutorService createScheduler;
@@ -1516,6 +1518,10 @@ public abstract class DruidAbstractDataSource extends WrapperAdapter implements
lock.unlock();
}
}
protected void setFailContinuous(boolean fail) {
failContinuous.set(fail);
}
public void initPhysicalConnection(Connection conn) throws SQLException {
if (conn.getAutoCommit() != defaultAutoCommit) {