You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2017/08/30 14:41:54 UTC
qpid-jms git commit: QPIDJMS-320: wrap the parser cache to make it
thread safe
Repository: qpid-jms
Updated Branches:
refs/heads/master 99441c0f5 -> 22c3358a5
QPIDJMS-320: wrap the parser cache to make it thread safe
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/22c3358a
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/22c3358a
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/22c3358a
Branch: refs/heads/master
Commit: 22c3358a5c0e9d29ef665786ffa6db5a6f351169
Parents: 99441c0
Author: Robbie Gemmell <ro...@apache.org>
Authored: Wed Aug 30 15:36:46 2017 +0100
Committer: Robbie Gemmell <ro...@apache.org>
Committed: Wed Aug 30 15:36:46 2017 +0100
----------------------------------------------------------------------
.../main/java/org/apache/qpid/jms/selector/SelectorParser.java | 4 +++-
.../src/main/java/org/apache/qpid/jms/util/LRUCache.java | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/22c3358a/qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/SelectorParser.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/SelectorParser.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/SelectorParser.java
index e203267..eff2470 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/SelectorParser.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/selector/SelectorParser.java
@@ -17,6 +17,8 @@
package org.apache.qpid.jms.selector;
import java.io.StringReader;
+import java.util.Collections;
+import java.util.Map;
import org.apache.qpid.jms.selector.filter.BooleanExpression;
import org.apache.qpid.jms.selector.filter.FilterException;
@@ -25,7 +27,7 @@ import org.apache.qpid.jms.util.LRUCache;
public class SelectorParser {
- private static final LRUCache<Object, Object> cache = new LRUCache<Object, Object>(100);
+ private static final Map<String, Object> cache = Collections.synchronizedMap(new LRUCache<String, Object>(100));
public static BooleanExpression parse(String sql) throws FilterException {
Object result = cache.get(sql);
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/22c3358a/qpid-jms-client/src/main/java/org/apache/qpid/jms/util/LRUCache.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/util/LRUCache.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/util/LRUCache.java
index a522fcf..9fc7cb5 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/util/LRUCache.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/util/LRUCache.java
@@ -20,7 +20,7 @@ import java.util.LinkedHashMap;
import java.util.Map;
/**
- * A Simple LRU Cache based on a LinkedHashMap.
+ * A Simple LRU Cache based on a LinkedHashMap. Not thread-safe.
*
* @param <K> The type of the map key.
* @param <V> The type of the map value.
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org