Author: markt Date: Fri Oct 13 17:22:07 2017 New Revision: 1812154 URL: http://svn.apache.org/viewvc?rev=1812154&view=rev Log: Fix remaining SpotBugs failures in the jdbc-pool code when the rank is set to 16 (the maximum rank is 20 so there are still quite a few other issues to look at)
Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java tomcat/trunk/res/findbugs/filter-false-positives.xml Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=1812154&r1=1812153&r2=1812154&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java Fri Oct 13 17:22:07 2017 @@ -621,7 +621,10 @@ public class ConnectionPool { // we could have threads stuck in idle.poll(timeout) that will never be // notified if (waitcount.get() > 0) { - idle.offer(create(true)); + if (!idle.offer(create(true))) { + log.warn("Failed to add a new connection to the pool after releasing a connection " + + "when at least one thread was waiting for a connection."); + } } } Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java?rev=1812154&r1=1812153&r2=1812154&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/PoolProperties.java Fri Oct 13 17:22:07 2017 @@ -54,7 +54,7 @@ public class PoolProperties implements P private volatile String validationQuery; private volatile int validationQueryTimeout = -1; private volatile String validatorClassName; - private volatile Validator validator; + private volatile transient Validator validator; private volatile boolean testOnBorrow = false; private volatile boolean testOnReturn = false; private volatile boolean testWhileIdle = false; Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/res/findbugs/filter-false-positives.xml?rev=1812154&r1=1812153&r2=1812154&view=diff ============================================================================== --- tomcat/trunk/res/findbugs/filter-false-positives.xml (original) +++ tomcat/trunk/res/findbugs/filter-false-positives.xml Fri Oct 13 17:22:07 2017 @@ -738,6 +738,14 @@ <Bug code="RV" /> </Match> <Match> + <!-- Name shadowing is deliberate --> + <Or> + <Class name="org.apache.tomcat.jdbc.pool.DataSource" /> + <Class name="org.apache.tomcat.jdbc.pool.XADataSource" /> + </Or> + <Bug pattern="NM_SAME_SIMPLE_NAME_AS_INTERFACE" /> + </Match> + <Match> <!-- Lock is released --> <Class name="org.apache.tomcat.jdbc.pool.FairBlockingQueue" /> <Method name="poll" /> @@ -762,6 +770,11 @@ <Bug pattern="SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE" /> </Match> <Match> + <!-- The name isn't great but it is part of the public API now --> + <Class name="org.apache.tomcat.jdbc.pool.TrapException" /> + <Bug pattern="NM_CLASS_NOT_EXCEPTION" /> + </Match> + <Match> <!-- Lack of thread-safety is accepted in return for better performance. --> <Class name="org.apache.tomcat.jdbc.pool.interceptor.SlowQueryReport$QueryStats" /> <Or> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org