You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by de...@apache.org on 2012/09/26 15:29:16 UTC

svn commit: r1390473 - /activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java

Author: dejanb
Date: Wed Sep 26 13:29:16 2012
New Revision: 1390473

URL: http://svn.apache.org/viewvc?rev=1390473&view=rev
Log:
https://issues.apache.org/jira/browse/AMQ-3887 - do safeWaitUntilStarted outside of the synchronized block as deadlocks are possible

Modified:
    activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java

Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java?rev=1390473&r1=1390472&r2=1390473&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java Wed Sep 26 13:29:16 2012
@@ -273,14 +273,14 @@ public abstract class DemandForwardingBr
                 }
                 startedLatch.countDown();
                 localStartedLatch.countDown();
+            }
 
-                safeWaitUntilStarted();
+            safeWaitUntilStarted();
 
-                if (!disposed.get()) {
-                    setupStaticDestinations();
-                } else {
-                    LOG.warn("Network connection between " + localBroker + " and " + remoteBroker + "(" + remoteBrokerName + ") was interrupted during establishment.");
-                }
+            if (!disposed.get()) {
+                setupStaticDestinations();
+            } else {
+                LOG.warn("Network connection between " + localBroker + " and " + remoteBroker + "(" + remoteBrokerName + ") was interrupted during establishment.");
             }
         }
     }