diff --git a/src/main/java/com/alibaba/druid/pool/PoolableConnection.java b/src/main/java/com/alibaba/druid/pool/PoolableConnection.java index da227e1335..7c6658a325 100644 --- a/src/main/java/com/alibaba/druid/pool/PoolableConnection.java +++ b/src/main/java/com/alibaba/druid/pool/PoolableConnection.java @@ -66,9 +66,7 @@ public class PoolableConnection implements PooledConnection, Connection { // if (holder != null) { DruidAbstractDataSource dataSource = holder.getDataSource(); - if (dataSource != null) { - holder.getDataSource().handleConnectionException(this, t); - } + dataSource.handleConnectionException(this, t); } if (t instanceof SQLException) { @@ -86,7 +84,7 @@ public class PoolableConnection implements PooledConnection, Connection { } catch (SQLException ex) { LOG.error("clear parameter error", ex); } - + if (holder.isPoolPreparedStatements()) { this.holder.getStatementPool().put(stmt); stmt.clearResultSet(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/basic/ConnectionTest5.java b/src/test/java/com/alibaba/druid/bvt/pool/basic/ConnectionTest5.java index aa60e5b07e..d12a341a43 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/basic/ConnectionTest5.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/basic/ConnectionTest5.java @@ -147,7 +147,7 @@ public class ConnectionTest5 extends TestCase { } }); - conn.getConnection().close(); + conn.close(); { SQLException error = null; @@ -159,7 +159,6 @@ public class ConnectionTest5 extends TestCase { Assert.assertNotNull(error); } - conn.close(); }