public DruidPooledConnection getConnectionDirect(long maxWaitMillis)throws SQLException { intnotFullTimeoutRetryCnt=0; for (;;) { // handle notFullTimeoutRetry DruidPooledConnection poolableConnection; try { poolableConnection = getConnectionInternal(maxWaitMillis); } catch (GetConnectionTimeoutException ex) { if (notFullTimeoutRetryCnt <= this.notFullTimeoutRetryCount && !isFull()) { notFullTimeoutRetryCnt++; if (LOG.isWarnEnabled()) { LOG.warn("not full timeout retry : " + notFullTimeoutRetryCnt); } continue; } throw ex; }
if (isTestOnBorrow()) { booleanvalidate= testConnectionInternal(poolableConnection.getConnection()); if (!validate) { if (LOG.isDebugEnabled()) { LOG.debug("skip not validate connection."); }
if (idleMillis >= timeBetweenEvictionRunsMillis) { booleanvalidate= testConnectionInternal(poolableConnection.getConnection()); if (!validate) { if (LOG.isDebugEnabled()) { LOG.debug("skip not validate connection."); }