From 865888824c2eb454573a6664f38ce7c2ed716564 Mon Sep 17 00:00:00 2001 From: imhao183 Date: Fri, 13 Dec 2019 12:58:07 +0800 Subject: [PATCH] Revert "Fix race condition during SensitiveFilter update" This reverts commit ab7b20871aa5c584827c236b50c5c26d650b4908. --- .../java/io/moquette/persistence/MemoryMessagesStore.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java index 736b94f9..0ba32860 100755 --- a/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java +++ b/broker/src/main/java/io/moquette/persistence/MemoryMessagesStore.java @@ -42,7 +42,6 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.*; -import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Lock; @@ -112,7 +111,7 @@ public class MemoryMessagesStore implements IMessagesStore { private final DatabaseStore databaseStore; private ConcurrentHashMap userMaxPullSeq = new ConcurrentHashMap<>(); - private AtomicReference mSensitiveFilter; + private SensitiveFilter mSensitiveFilter; private volatile long lastUpdateSensitiveTime = 0; private ConcurrentHashMap userGlobalSlientMap = new ConcurrentHashMap<>(); @@ -148,7 +147,7 @@ public class MemoryMessagesStore implements IMessagesStore { } } Set sensitiveWords = databaseStore.getSensitiveWord(); - mSensitiveFilter.set(new SensitiveFilter(sensitiveWords)); + mSensitiveFilter = new SensitiveFilter(sensitiveWords); } } @@ -2502,7 +2501,7 @@ public class MemoryMessagesStore implements IMessagesStore { @Override public Set handleSensitiveWord(String message) { updateSensitiveWord(); - return mSensitiveFilter.get().getSensitiveWords(message, SensitiveFilter.MatchType.MAX_MATCH); + return mSensitiveFilter.getSensitiveWords(message, SensitiveFilter.MatchType.MAX_MATCH); } @Override