Author: kfujino Date: Tue Nov 22 06:15:43 2016 New Revision: 1770800 URL: http://svn.apache.org/viewvc?rev=1770800&view=rev Log: Add the statistics for reconnect connection.
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/DataSourceProxy.java tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPoolMBean.java tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/mbeans-descriptors.xml tomcat/trunk/webapps/docs/changelog.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=1770800&r1=1770799&r2=1770800&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 Tue Nov 22 06:15:43 2016 @@ -135,6 +135,7 @@ public class ConnectionPool { private final AtomicLong returnedCount = new AtomicLong(0); private final AtomicLong createdCount = new AtomicLong(0); private final AtomicLong releasedCount = new AtomicLong(0); + private final AtomicLong reconnectedCount = new AtomicLong(0); //=============================================================================== // PUBLIC METHODS @@ -812,6 +813,7 @@ public class ConnectionPool { //the connection shouldn't have to poll again. try { con.reconnect(); + reconnectedCount.incrementAndGet(); int validationMode = getPoolProperties().isTestOnConnect() || getPoolProperties().getInitSQL()!=null ? PooledConnection.VALIDATE_INIT : PooledConnection.VALIDATE_BORROW; @@ -1221,6 +1223,14 @@ public class ConnectionPool { } /** + * The total number of connections reconnected by this pool. + * @return the reconnected connection count + */ + public long getReconnectedCount() { + return reconnectedCount.get(); + } + + /** * Tread safe wrapper around a future for the regular queue * This one retrieves the pooled connection object * and performs the initialization according to Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java?rev=1770800&r1=1770799&r2=1770800&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java Tue Nov 22 06:15:43 2016 @@ -801,6 +801,18 @@ public class DataSourceProxy implements } } + /** + * The total number of connections reconnected by this pool. + * @return the reconnected connection count + */ + public long getReconnectedCount() { + try { + return createPool().getReconnectedCount(); + } catch (SQLException x) { + throw new RuntimeException(x); + } + } + //========================================================= // PROPERTIES / CONFIGURATION //========================================================= Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java?rev=1770800&r1=1770799&r2=1770800&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPool.java Tue Nov 22 06:15:43 2016 @@ -186,6 +186,11 @@ public class ConnectionPool extends Noti return pool.getReleasedCount(); } + @Override + public long getReconnectedCount() { + return pool.getReconnectedCount(); + } + //================================================================= // POOL OPERATIONS //================================================================= Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPoolMBean.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPoolMBean.java?rev=1770800&r1=1770799&r2=1770800&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPoolMBean.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/jmx/ConnectionPoolMBean.java Tue Nov 22 06:15:43 2016 @@ -43,6 +43,8 @@ public interface ConnectionPoolMBean ext public long getReleasedCount(); + public long getReconnectedCount(); + //================================================================= // POOL OPERATIONS //================================================================= Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/mbeans-descriptors.xml?rev=1770800&r1=1770799&r2=1770800&view=diff ============================================================================== --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/mbeans-descriptors.xml (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/mbeans-descriptors.xml Tue Nov 22 06:15:43 2016 @@ -350,6 +350,11 @@ type="java.lang.Long" writeable="false"/> + <attribute name="reconnectedCount" + description="The total number of connections reconnected by this pool." + type="java.lang.Long" + writeable="false"/> + <operation name="checkIdle" description="forces a check of idle connections" impact="ACTION" Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1770800&r1=1770799&r2=1770800&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Tue Nov 22 06:15:43 2016 @@ -126,7 +126,8 @@ <add> <bug>58816</bug>: Implement the statistics of jdbc-pool. The stats infos are <code>borrowedCount</code>, <code>returnedCount</code>, - <code>createdCount</code> and <code>releasedCount</code>. (kfujino) + <code>createdCount</code>, <code>releasedCount</code> and + <code>reconnectedCount</code>. (kfujino) </add> <fix> <bug>60194</bug>: If <code>validationQuery</code> is not specified, --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org