You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ma...@apache.org on 2014/01/29 21:07:54 UTC

svn commit: r1562569 - in /commons/proper/pool/trunk/src: main/java/org/apache/commons/pool2/impl/GenericObjectPool.java test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java

Author: markt
Date: Wed Jan 29 20:07:53 2014
New Revision: 1562569

URL: http://svn.apache.org/r1562569
Log:
Further fix for POOL-248. Ensure ISE is thrown with or without an AbandonedConfig.

Modified:
    commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
    commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java

Modified: commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
URL: http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java?rev=1562569&r1=1562568&r2=1562569&view=diff
==============================================================================
--- commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java (original)
+++ commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java Wed Jan 29 20:07:53 2014
@@ -542,7 +542,8 @@ public class GenericObjectPool<T> extend
                 synchronized(p) {
                     final PooledObjectState state = p.getState();
                     if (state != PooledObjectState.ALLOCATED) {
-                        return;
+                        throw new IllegalStateException(
+                                "Object has already been retured to this pool or is invalid");
                     } else {
                         p.markReturning(); // Keep from being marked abandoned
                     }

Modified: commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java
URL: http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java?rev=1562569&r1=1562568&r2=1562569&view=diff
==============================================================================
--- commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java (original)
+++ commons/proper/pool/trunk/src/test/java/org/apache/commons/pool2/impl/TestGenericObjectPool.java Wed Jan 29 20:07:53 2014
@@ -2108,11 +2108,10 @@ public class TestGenericObjectPool exten
     }
 
     // POOL-248
-    @Test
+    @Test(expected=IllegalStateException.class)
     public void testMultipleReturnOfSameObject() throws Exception {
         final GenericObjectPool<String> pool = new GenericObjectPool<String>(
-                factory, new GenericObjectPoolConfig(),
-                new AbandonedConfig());
+                factory, new GenericObjectPoolConfig());
 
         Assert.assertEquals(0, pool.getNumActive());
         Assert.assertEquals(0, pool.getNumIdle());