diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index 54f20241bb..cc9e17d83e 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -654,7 +654,8 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat } // 防止创建超过maxActive数量的连接 - if (activeCount + poolingCount >= maxIdle) { + int max = maxActive > maxIdle ? maxActive : maxIdle; + if (activeCount + poolingCount >= max) { lowWater.await(); continue; }