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 2013/10/14 14:13:28 UTC

svn commit: r1531870 - /commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/DefaultPooledObject.java

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);
         }