diff --git a/src/main/java/com/alibaba/druid/stat/JdbcDataSourceStat.java b/src/main/java/com/alibaba/druid/stat/JdbcDataSourceStat.java index 0cd43674e3..fae0d82635 100644 --- a/src/main/java/com/alibaba/druid/stat/JdbcDataSourceStat.java +++ b/src/main/java/com/alibaba/druid/stat/JdbcDataSourceStat.java @@ -109,7 +109,7 @@ public class JdbcDataSourceStat implements JdbcDataSourceStatMBean { while (iter.hasNext()) { Map.Entry entry = iter.next(); JdbcSqlStat stat = entry.getValue(); - if (stat.getExecuteCount() == 0) { + if (stat.getExecuteCount() == 0 && stat.getRunningCount() == 0) { iter.remove(); } else { stat.reset(); diff --git a/src/main/java/com/alibaba/druid/stat/JdbcStatManager.java b/src/main/java/com/alibaba/druid/stat/JdbcStatManager.java index a6b5169b87..40e192e989 100644 --- a/src/main/java/com/alibaba/druid/stat/JdbcStatManager.java +++ b/src/main/java/com/alibaba/druid/stat/JdbcStatManager.java @@ -301,7 +301,7 @@ public class JdbcStatManager implements JdbcStatManagerMBean { for (DataSourceProxyImpl dataSource : DruidDriver.getProxyDataSources().values()) { Map statMap = dataSource.getDataSourceStat().getSqlStatMap(); for (Map.Entry entry : statMap.entrySet()) { - if (entry.getValue().getExecuteCount() == 0) { + if (entry.getValue().getExecuteCount() == 0 && entry.getValue().getRunningCount() == 0) { continue; } @@ -314,7 +314,7 @@ public class JdbcStatManager implements JdbcStatManagerMBean { for (DruidDataSource dataSource : DruidDataSourceStatManager.getDruidDataSourceInstances()) { Map statMap = dataSource.getDataSourceStat().getSqlStatMap(); for (Map.Entry entry : statMap.entrySet()) { - if (entry.getValue().getExecuteCount() == 0) { + if (entry.getValue().getExecuteCount() == 0 && entry.getValue().getRunningCount() == 0) { continue; } diff --git a/src/main/java/com/alibaba/druid/support/http/StatViewServlet.java b/src/main/java/com/alibaba/druid/support/http/StatViewServlet.java index 7c2a8d5b04..11db348cd0 100644 --- a/src/main/java/com/alibaba/druid/support/http/StatViewServlet.java +++ b/src/main/java/com/alibaba/druid/support/http/StatViewServlet.java @@ -339,6 +339,10 @@ public class StatViewServlet extends HttpServlet { List> array = new ArrayList>(); for (DruidDataSource datasource : DruidDataSourceStatManager.getDruidDataSourceInstances()) { for (JdbcSqlStat sqlStat : datasource.getDataSourceStat().getSqlStatMap().values()) { + if (sqlStat.getExecuteCount() == 0 && sqlStat.getRunningCount() == 0) { + continue; + } + array.add(getSqlStatData(sqlStat)); } }