diff --git a/src/main/java/com/alibaba/druid/pool/DruidPooledConnection.java b/src/main/java/com/alibaba/druid/pool/DruidPooledConnection.java index 645bef3b3b..c5281445cb 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidPooledConnection.java +++ b/src/main/java/com/alibaba/druid/pool/DruidPooledConnection.java @@ -1006,14 +1006,16 @@ public class DruidPooledConnection implements javax.sql.PooledConnection, Connec } final void beforeExecute() { - running = true; + final ConnectionHolder holder = this.holder; + if (holder != null && holder.getDataSource().isRemoveAbandoned()) { + running = true; + } } final void afterExecute() { - running = false; - final ConnectionHolder holder = this.holder; if (holder != null && holder.getDataSource().isRemoveAbandoned()) { + running = false; holder.setLastActiveTimeMillis(System.currentTimeMillis()); } }