Hi, When a connection is closed by "ResetAbandoned" the invoke() method from JdbcInterceptor is not called. Is it the expected behaviour?
-->server.xml <Resource name="jdbc/cacheapp" auth="Container" type="javax.sql.DataSource" removeAbandoned="true" removeAbandonedTimeout="30" maxActive="5" maxIdle="1" initialSize="0" minIdle="0" maxWait="5000" validationQuery="select 1" maxAge="1" testOnBorrow="true" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" alternateUsernameAllowed="true" jdbcInterceptors="pool.ExampleInterceptor" username="tomcat" password="example" driverClassName="com.intersys.jdbc.CacheDriver" url="jdbc:Cache://serverip:1972/NS"/> --> pool.ExampleInterceptor public class ExampleInterceptor extends JdbcInterceptor { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { if (method.getName() == CLOSE_VAL) { System.out.println("Interceptor called."); //Doesn't happen but connection is really closed (checked via JMX) } return super.invoke(proxy, method, args); } --> JSP to simulate long running query <%@ page session="false" import="java.sql.*,javax.naming.*, javax.sql.*, java.util.*" contentType="text/html" %><% Connection conn = null; try { Context ctx = new InitialContext(); DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/cacheapp"); conn = ds.getConnection(); Thread.sleep(60000); } catch (Exception e) { out.print(e.getMessage()); } finally { if (conn != null) { try { //conn.close(); //Don't close to force RemovedAbandonedTimeout } catch (Exception e) {} } } %> Server version: Apache Tomcat/7.0.65 Server built: Oct 9 2015 08:36:58 UTC Server number: 7.0.65.0 OS Name: Linux OS Version: 2.6.18-194.32.1.el5 Architecture: amd64 JVM Version: 1.7.0_80-b15 JVM Vendor: Oracle Corporation Thanks in advance. Robert