diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java index 08e257f79a..177ae15787 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSource.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSource.java @@ -315,18 +315,15 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat connectCount++; ConnectionHolder holder; - for (;;) { - if (maxWait > 0) { - holder = pollLast(maxWait, TimeUnit.MILLISECONDS); - } else { - holder = takeLast(); - } - if (holder == null) { - throw new SQLException("can not get connection"); - } + if (maxWait > 0) { + holder = pollLast(maxWait, TimeUnit.MILLISECONDS); + } else { + holder = takeLast(); + } - break; + if (holder == null) { + throw new SQLException("can not get connection"); } holder.incrementUseCount();