You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ps...@apache.org on 2009/11/25 17:49:02 UTC
svn commit: r884192 -
/commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java
Author: psteitz
Date: Wed Nov 25 16:49:02 2009
New Revision: 884192
URL: http://svn.apache.org/viewvc?rev=884192&view=rev
Log:
Added test case to ensure prepareCall resets connection last used property.
Modified:
commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java
Modified: commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java?rev=884192&r1=884191&r2=884192&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java (original)
+++ commons/proper/dbcp/trunk/src/test/org/apache/commons/dbcp/TestAbandonedBasicDataSource.java Wed Nov 25 16:49:02 2009
@@ -133,4 +133,25 @@
ds.getConnection(); // trigger abandoned cleanup again
conn1.createStatement();
}
+
+ /**
+ * Verify that lastUsed property is updated when a connection
+ * prepares a callable statement.
+ */
+ public void testlastUsedPrepareCall() throws Exception {
+ ds.setRemoveAbandonedTimeout(1);
+ ds.setMaxActive(2);
+ Connection conn1 = ds.getConnection();
+ Thread.sleep(500);
+ conn1.prepareCall("{call home}"); // Should reset lastUsed
+ Thread.sleep(800);
+ Connection conn2 = ds.getConnection(); // triggers abandoned cleanup
+ conn1.prepareCall("{call home}"); // Should still be OK
+ conn2.close();
+ Thread.sleep(500);
+ conn1.prepareCall("{call home}"); // reset
+ Thread.sleep(800);
+ ds.getConnection(); // trigger abandoned cleanup again
+ conn1.createStatement();
+ }
}