You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2012/04/26 18:33:06 UTC
svn commit: r1330937 - in /commons/proper/dbcp/trunk/src: changes/
java/org/apache/commons/dbcp2/ java/org/apache/commons/dbcp2/datasources/
java/org/apache/commons/dbcp2/managed/
Author: sebb
Date: Thu Apr 26 16:33:06 2012
New Revision: 1330937
URL: http://svn.apache.org/viewvc?rev=1330937&view=rev
Log:
DBCP-322 CPDSConnectionFactory.validateObject(Object) ignores Throwable
Modified:
commons/proper/dbcp/trunk/src/changes/changes.xml
commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/BasicDataSource.java
commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/KeyedCPDSConnectionFactory.java
commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/managed/BasicManagedDataSource.java
Modified: commons/proper/dbcp/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/changes/changes.xml?rev=1330937&r1=1330936&r2=1330937&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/changes/changes.xml (original)
+++ commons/proper/dbcp/trunk/src/changes/changes.xml Thu Apr 26 16:33:06 2012
@@ -42,6 +42,9 @@ The <action> type attribute can be add,u
features as well as bug fixes and enhancements. Version 2.0.x supports JDBC
4, so requires JDK 1.6. Applications running under JDK 1.4-1.5 must use
DBCP 1.3.x. Applications running under JDK 1.6 should use DBCP 2.0.x.">
+ <action issue="DBCP-322" dev="sebb" type="fix">
+ CPDSConnectionFactory.validateObject(Object) ignores Throwable.
+ </action>
<action dev="markt" type="add">
Provide a new option (cacheState) to cache current values of autoCommit
and readOnly so database queries are not required for every call to the
Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/BasicDataSource.java
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/BasicDataSource.java?rev=1330937&r1=1330936&r2=1330937&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/BasicDataSource.java (original)
+++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/BasicDataSource.java Thu Apr 26 16:33:06 2012
@@ -1616,7 +1616,7 @@ public class BasicDataSource implements
).getContextClassLoader().loadClass(
driverClassName);
}
- } catch (Throwable t) {
+ } catch (Exception t) {
String message = "Cannot load JDBC driver class '" +
driverClassName + "'";
logWriter.println(message);
@@ -1638,7 +1638,7 @@ public class BasicDataSource implements
throw new SQLException("No suitable driver", "08001");
}
}
- } catch (Throwable t) {
+ } catch (Exception t) {
String message = "Cannot create JDBC driver of class '" +
(driverClassName != null ? driverClassName : "") +
"' for connect URL '" + url + "'";
Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java?rev=1330937&r1=1330936&r2=1330937&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java (original)
+++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java Thu Apr 26 16:33:06 2012
@@ -30,6 +30,7 @@ import javax.sql.ConnectionEventListener
import javax.sql.ConnectionPoolDataSource;
import javax.sql.PooledConnection;
+import org.apache.commons.dbcp2.Utils;
import org.apache.commons.pool2.ObjectPool;
import org.apache.commons.pool2.PoolableObjectFactory;
@@ -195,27 +196,9 @@ class CPDSConnectionFactory
} catch (Exception e) {
valid = false;
} finally {
- if (rset != null) {
- try {
- rset.close();
- } catch (Throwable t) {
- // ignore
- }
- }
- if (stmt != null) {
- try {
- stmt.close();
- } catch (Throwable t) {
- // ignore
- }
- }
- if (conn != null) {
- try {
- conn.close();
- } catch (Throwable t) {
- // ignore
- }
- }
+ Utils.closeQuietly(rset);
+ Utils.closeQuietly(stmt);
+ Utils.closeQuietly(conn);
validatingSet.remove(pconn);
}
} else {
Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/KeyedCPDSConnectionFactory.java
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/KeyedCPDSConnectionFactory.java?rev=1330937&r1=1330936&r2=1330937&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/KeyedCPDSConnectionFactory.java (original)
+++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/datasources/KeyedCPDSConnectionFactory.java Thu Apr 26 16:33:06 2012
@@ -30,6 +30,7 @@ import javax.sql.ConnectionEventListener
import javax.sql.ConnectionPoolDataSource;
import javax.sql.PooledConnection;
+import org.apache.commons.dbcp2.Utils;
import org.apache.commons.pool2.KeyedObjectPool;
import org.apache.commons.pool2.KeyedPoolableObjectFactory;
@@ -190,27 +191,9 @@ class KeyedCPDSConnectionFactory
} catch(Exception e) {
valid = false;
} finally {
- if (rset != null) {
- try {
- rset.close();
- } catch (Throwable t) {
- // ignore
- }
- }
- if (stmt != null) {
- try {
- stmt.close();
- } catch (Throwable t) {
- // ignore
- }
- }
- if (conn != null) {
- try {
- conn.close();
- } catch (Throwable t) {
- // ignore
- }
- }
+ Utils.closeQuietly(rset);
+ Utils.closeQuietly(stmt);
+ Utils.closeQuietly(conn);
validatingSet.remove(pconn);
}
} else {
Modified: commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/managed/BasicManagedDataSource.java
URL: http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/managed/BasicManagedDataSource.java?rev=1330937&r1=1330936&r2=1330937&view=diff
==============================================================================
--- commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/managed/BasicManagedDataSource.java (original)
+++ commons/proper/dbcp/trunk/src/java/org/apache/commons/dbcp2/managed/BasicManagedDataSource.java Thu Apr 26 16:33:06 2012
@@ -143,14 +143,14 @@ public class BasicManagedDataSource exte
Class<?> xaDataSourceClass = null;
try {
xaDataSourceClass = Class.forName(xaDataSource);
- } catch (Throwable t) {
+ } catch (Exception t) {
String message = "Cannot load XA data source class '" + xaDataSource + "'";
throw (SQLException)new SQLException(message).initCause(t);
}
try {
xaDataSourceInstance = (XADataSource) xaDataSourceClass.newInstance();
- } catch (Throwable t) {
+ } catch (Exception t) {
String message = "Cannot create XA data source of class '" + xaDataSource + "'";
throw (SQLException)new SQLException(message).initCause(t);
}