Author: markt Date: Mon Oct 14 12:13:28 2013 New Revision: 1531870 URL: http://svn.apache.org/r1531870 Log: Fix some thread-safety issues in debug code highlighted by FindBugs
Modified: commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java Modified: commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java URL: http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java?rev=1531870&r1=1531869&r2=1531870&view=diff ============================================================================== --- commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java (original) +++ commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java Mon Oct 14 12:13:28 2013 @@ -46,8 +46,8 @@ public class DefaultPooledObject<T> impl private volatile long lastUseTime = createTime; private volatile long lastReturnTime = createTime; private volatile boolean logAbandoned = false; - private Exception borrowedBy = null; - private Exception usedBy = null; + private volatile Exception borrowedBy = null; + private volatile Exception usedBy = null; public DefaultPooledObject(T object) { this.object = object; @@ -255,9 +255,11 @@ public class DefaultPooledObject<T> impl @Override public void printStackTrace(PrintWriter writer) { + Exception borrowedBy = this.borrowedBy; if (borrowedBy != null) { borrowedBy.printStackTrace(writer); } + Exception usedBy = this.usedBy; if (usedBy != null) { usedBy.printStackTrace(writer); }