Repository: cassandra Updated Branches: refs/heads/cassandra-2.1 0e8310077 -> 488e775cc
Fix tests by making QP use its own executor Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/488e775c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/488e775c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/488e775c Branch: refs/heads/cassandra-2.1 Commit: 488e775cc13044ac1a2b4bd9c4e5d544a4d15bae Parents: 0e83100 Author: Aleksey Yeschenko <[email protected]> Authored: Fri Sep 19 12:57:17 2014 -0700 Committer: Aleksey Yeschenko <[email protected]> Committed: Fri Sep 19 12:57:17 2014 -0700 ---------------------------------------------------------------------- .../apache/cassandra/cql3/QueryProcessor.java | 30 +++++++++----------- 1 file changed, 14 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/488e775c/src/java/org/apache/cassandra/cql3/QueryProcessor.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/QueryProcessor.java b/src/java/org/apache/cassandra/cql3/QueryProcessor.java index 9a09d42..0c75642 100644 --- a/src/java/org/apache/cassandra/cql3/QueryProcessor.java +++ b/src/java/org/apache/cassandra/cql3/QueryProcessor.java @@ -19,9 +19,7 @@ package org.apache.cassandra.cql3; import java.nio.ByteBuffer; import java.util.*; -import java.util.concurrent.ConcurrentMap; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.TimeUnit; +import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; import com.google.common.annotations.VisibleForTesting; @@ -89,7 +87,8 @@ public class QueryProcessor implements QueryHandler @VisibleForTesting public static final CQLMetrics metrics = new CQLMetrics(); - private static AtomicInteger lastMinuteEvictionsCount = new AtomicInteger(0); + private static final AtomicInteger lastMinuteEvictionsCount = new AtomicInteger(0); + private static final ScheduledExecutorService evictionCheckTimer = Executors.newScheduledThreadPool(1); static { @@ -118,6 +117,17 @@ public class QueryProcessor implements QueryHandler }) .build(); + evictionCheckTimer.scheduleAtFixedRate(new Runnable() + { + public void run() + { + long count = lastMinuteEvictionsCount.getAndSet(0); + if (count > 0) + logger.info("{} prepared statements discarded in the last minute because cache limit reached ({} bytes)", + count, + MAX_CACHE_PREPARED_MEMORY); + } + }, 1, 1, TimeUnit.MINUTES); } public static int preparedStatementsCount() @@ -155,18 +165,6 @@ public class QueryProcessor implements QueryHandler private QueryProcessor() { MigrationManager.instance.register(new MigrationSubscriber()); - - StorageService.scheduledTasks.scheduleAtFixedRate(new Runnable() - { - public void run() - { - long count = lastMinuteEvictionsCount.getAndSet(0); - if (count > 0) - logger.info("{} prepared statements discarded in the last minute because cache limit reached ({} bytes)", - count, - MAX_CACHE_PREPARED_MEMORY); - } - }, 1, 1, TimeUnit.MINUTES); } public ParsedStatement.Prepared getPrepared(MD5Digest id)
