You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by dk...@apache.org on 2015/08/04 17:59:22 UTC
[03/10] activemq git commit: Fixing missing volatile on references in
VMTransport to prevent a synchronization bug.
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/3769284e
Tree: http://git-wip-us.apache.org/repos/asf/activemq/tree/3769284e
Diff: http://git-wip-us.apache.org/repos/asf/activemq/diff/3769284e
Branch: refs/heads/activemq-5.11.x
Commit: 3769284ecd6aec800d0a3750f3721b0d71fcb5b9
Parents: 2ad1f1e
Author: Christopher L. Shannon (cshannon) <ch...@gmail.com>
Authored: Wed May 20 18:38:59 2015 +0000
Committer: Daniel Kulp <dk...@apache.org>
Committed: Tue Aug 4 08:44:32 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/3769284e/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 75bd6fe..4b82f93 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();