You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2015/05/20 21:12:12 UTC

activemq git commit: Fixing missing volatile on references in VMTransport to prevent a synchronization bug.

Repository: activemq
Updated Branches:
  refs/heads/master f05ff94e5 -> e99c81483


Fixing missing volatile on references in VMTransport to prevent a synchronization bug.

This resolves https://issues.apache.org/jira/browse/AMQ-5787


Project: http://git-wip-us.apache.org/repos/asf/activemq/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq/commit/e99c8148
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/e99c8148
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/e99c8148

Branch: refs/heads/master
Commit: e99c8148301c6ff6b6ed529a26ba3337ef20d016
Parents: f05ff94
Author: Christopher L. Shannon (cshannon) <ch...@gmail.com>
Authored: Wed May 20 18:38:59 2015 +0000
Committer: Timothy Bish <ta...@gmail.com>
Committed: Wed May 20 15:09:17 2015 -0400

----------------------------------------------------------------------
 .../java/org/apache/activemq/transport/vm/VMTransport.java     | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq/blob/e99c8148/activemq-broker/src/main/java/org/apache/activemq/transport/vm/VMTransport.java
----------------------------------------------------------------------
diff --git a/activemq-broker/src/main/java/org/apache/activemq/transport/vm/VMTransport.java b/activemq-broker/src/main/java/org/apache/activemq/transport/vm/VMTransport.java
index d90473b..6e6726d 100755
--- a/activemq-broker/src/main/java/org/apache/activemq/transport/vm/VMTransport.java
+++ b/activemq-broker/src/main/java/org/apache/activemq/transport/vm/VMTransport.java
@@ -56,9 +56,9 @@ public class VMTransport implements Transport, Task {
     protected final long id;
 
     // Implementation
-    private LinkedBlockingQueue<Object> messageQueue;
-    private TaskRunnerFactory taskRunnerFactory;
-    private TaskRunner taskRunner;
+    private volatile LinkedBlockingQueue<Object> messageQueue;
+    private volatile TaskRunnerFactory taskRunnerFactory;
+    private volatile TaskRunner taskRunner;
 
     // Transport State
     protected final AtomicBoolean started = new AtomicBoolean();