This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-dbcp.git


The following commit(s) were added to refs/heads/master by this push:
     new 04933534 PoolableConnectionFactory.destroyObject() method behaves 
incorrectly on ABANDONED connection, issue with unhandled AbstractMethodError
     new 13af332d Merge branch 'master' of 
https://gitbox.apache.org/repos/asf/commons-dbcp.git
04933534 is described below

commit 04933534b1df11ed575d83cabb005b29afa3501c
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Sun Nov 3 14:31:34 2024 -0500

    PoolableConnectionFactory.destroyObject() method behaves incorrectly on
    ABANDONED connection, issue with unhandled AbstractMethodError
---
 src/changes/changes.xml                                               | 1 +
 src/main/java/org/apache/commons/dbcp2/PoolableConnectionFactory.java | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 814d8f6a..8ce351cb 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -72,6 +72,7 @@ The <action> type attribute can be add,update,fix,remove.
       <action type="update" dev="ggregory" due-to="Gary Gregory">Fix SpotBugs 
MC_OVERRIDABLE_METHOD_CALL_IN_READ_OBJECT in PerUserPoolDataSource.</action>
       <action type="update" dev="ggregory" due-to="Gary Gregory">Fix SpotBugs 
MC_OVERRIDABLE_METHOD_CALL_IN_READ_OBJECT in SharedPoolDataSource.</action>
       <action type="update" dev="ggregory" due-to="Johno Crawford">Avoid 
object creation when invoking isDisconnectionSqlException #422.</action> 
+      <action type="update" dev="ggregory" due-to="denixx baykin, Phil Steitz, 
Gary Gregory">PoolableConnectionFactory.destroyObject() method behaves 
incorrectly on ABANDONED connection, issue with unhandled 
AbstractMethodError.</action>
       <!-- ADD -->
       <action type="update" dev="ggregory" due-to="Johno Crawford, Gary 
Gregory">Add support for ignoring non-fatal SQL state codes #421.</action>
       <!-- UPDATE -->
diff --git 
a/src/main/java/org/apache/commons/dbcp2/PoolableConnectionFactory.java 
b/src/main/java/org/apache/commons/dbcp2/PoolableConnectionFactory.java
index c182d174..3a4f65cd 100644
--- a/src/main/java/org/apache/commons/dbcp2/PoolableConnectionFactory.java
+++ b/src/main/java/org/apache/commons/dbcp2/PoolableConnectionFactory.java
@@ -149,7 +149,7 @@ public class PoolableConnectionFactory implements 
PooledObjectFactory<PoolableCo
     @Override
     public void destroyObject(final PooledObject<PoolableConnection> p, final 
DestroyMode mode) throws SQLException {
         if (mode == DestroyMode.ABANDONED) {
-            p.getObject().getInnermostDelegate().abort(Runnable::run);
+            Jdbc41Bridge.abort(p.getObject().getInnermostDelegate(), 
Runnable::run);
         } else {
             p.getObject().reallyClose();
         }

Reply via email to