Index: src/java/org/apache/commons/pool/composite/InvalidEvictorLender.java =================================================================== --- src/java/org/apache/commons/pool/composite/InvalidEvictorLender.java (revision 602588) +++ src/java/org/apache/commons/pool/composite/InvalidEvictorLender.java (working copy) @@ -142,9 +142,11 @@ */ public void run() { // Skip some synchronization if we can - if (referant == null) { - cancel(); - return; + synchronized (InvalidEvictorReference.this) { + if (referant == null) { + cancel(); + return; + } } final PoolableObjectFactory factory = getObjectPool().getFactory();