Author: fhanik
Date: Tue Jul 14 15:22:05 2009
New Revision: 793937
URL: http://svn.apache.org/viewvc?rev=793937&view=rev
Log:
More doco
Modified:
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ConnectionState.java
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ResetAbandonedTimer.java
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java
Modified:
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ConnectionState.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ConnectionState.java?rev=793937&r1=793936&r2=793937&view=diff
==============================================================================
---
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ConnectionState.java
(original)
+++
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ConnectionState.java
Tue Jul 14 15:22:05 2009
@@ -28,7 +28,14 @@
import org.apache.tomcat.jdbc.pool.PooledConnection;
/**
- * Interceptor that keep track of connection state to avoid roundtrips to the
database
+ * Interceptor that keep track of connection state to avoid roundtrips to the
database.
+ * The {...@link org.apache.tomcat.jdbc.pool.ConnectionPool} is optimized to
do as little work as possible.
+ * The pool itself doesn't remember settings like {...@link
java.sql.Connection#setAutoCommit(boolean)},
+ * {...@link java.sql.Connection#setReadOnly(boolean)}, {...@link
java.sql.Connection#setCatalog(String)} or
+ * {...@link java.sql.Connection#setTransactionIsolation(int)}. It relies on
the application to remember how and when
+ * these settings have been applied.
+ * In the cases where the application code doesn't know or want to keep track
of the state, this interceptor helps cache the
+ * state, and it also avoids roundtrips to the database asking for it.
* @author fhanik
*
*/
Modified:
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ResetAbandonedTimer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ResetAbandonedTimer.java?rev=793937&r1=793936&r2=793937&view=diff
==============================================================================
---
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ResetAbandonedTimer.java
(original)
+++
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/ResetAbandonedTimer.java
Tue Jul 14 15:22:05 2009
@@ -25,7 +25,10 @@
/**
* Class that resets the abandoned timer on any activity on the
- * Connection or any successful query executions
+ * Connection or any successful query executions.
+ * This interceptor is useful for when you have a {...@link
org.apache.tomcat.jdbc.pool.PoolConfiguration#setRemoveAbandonedTimeout(int)}
+ * that is fairly low, and you want to reset the abandoned time each time any
operation on the connection is performed
+ * This is useful for batch processing programs that use connections for
extensive amount of times.
* @author fhanik
*
*/
Modified:
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java?rev=793937&r1=793936&r2=793937&view=diff
==============================================================================
---
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java
(original)
+++
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java
Tue Jul 14 15:22:05 2009
@@ -26,7 +26,8 @@
import org.apache.tomcat.jdbc.pool.ConnectionPool;
import org.apache.tomcat.jdbc.pool.PooledConnection;
/**
- * Keeps track of statements associated with a connection and invokes close
upon connection.close()
+ * Keeps track of statements associated with a connection and invokes close
upon {...@link java.sql.Connection#close()}
+ * Useful for applications that dont close the associated statements after
being done with a connection.
* @author fhanik
*
*/
@@ -39,7 +40,8 @@
public Object createStatement(Object proxy, Method method, Object[] args,
Object statement, long time) {
// TODO Auto-generated method stub
try {
- statements.add(new WeakReference<Statement>((Statement)statement));
+ if (statement instanceof Statement)
+ statements.add(new
WeakReference<Statement>((Statement)statement));
}catch (ClassCastException x) {
//ignore this one
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]