diff --git a/client/src/main/java/com/metamx/druid/query/ChainedExecutionQueryRunner.java b/client/src/main/java/com/metamx/druid/query/ChainedExecutionQueryRunner.java index cf4e31a0f1c..0dd878c7aad 100644 --- a/client/src/main/java/com/metamx/druid/query/ChainedExecutionQueryRunner.java +++ b/client/src/main/java/com/metamx/druid/query/ChainedExecutionQueryRunner.java @@ -24,7 +24,6 @@ import com.google.common.base.Throwables; import com.google.common.collect.Iterables; import com.google.common.collect.Lists; import com.google.common.collect.Ordering; -import com.google.common.primitives.Ints; import com.metamx.common.guava.BaseSequence; import com.metamx.common.guava.MergeIterable; import com.metamx.common.guava.Sequence; @@ -83,7 +82,8 @@ public class ChainedExecutionQueryRunner implements QueryRunner @Override public Sequence run(final Query query) { - final int priority = Ints.tryParse(query.getContextValue("priority", "0")); + final int priority = Integer.parseInt(query.getContextValue("priority", "0")); + return new BaseSequence>( new BaseSequence.IteratorMaker>() { @@ -100,14 +100,8 @@ public class ChainedExecutionQueryRunner implements QueryRunner public Future> apply(final QueryRunner input) { return exec.submit( - new PrioritizedCallable>() + new PrioritizedCallable>(priority) { - @Override - public int getPriority() - { - return priority; - } - @Override public List call() throws Exception { diff --git a/client/src/main/java/com/metamx/druid/query/PrioritizedCallable.java b/client/src/main/java/com/metamx/druid/query/PrioritizedCallable.java index fea78256b59..3771b8a03c2 100644 --- a/client/src/main/java/com/metamx/druid/query/PrioritizedCallable.java +++ b/client/src/main/java/com/metamx/druid/query/PrioritizedCallable.java @@ -23,7 +23,17 @@ import java.util.concurrent.Callable; /** */ -public interface PrioritizedCallable extends Callable +public abstract class PrioritizedCallable implements Callable { - public int getPriority(); + final int priority; + + public PrioritizedCallable(int priority) + { + this.priority = priority; + } + + public int getPriority() + { + return priority; + } } diff --git a/client/src/main/java/com/metamx/druid/query/PrioritizedExecutorService.java b/client/src/main/java/com/metamx/druid/query/PrioritizedExecutorService.java index 46a7e07486e..5e13184de8b 100644 --- a/client/src/main/java/com/metamx/druid/query/PrioritizedExecutorService.java +++ b/client/src/main/java/com/metamx/druid/query/PrioritizedExecutorService.java @@ -122,14 +122,8 @@ public class PrioritizedExecutorService extends AbstractExecutorService { Callable theCallable = tCallable; if (!(tCallable instanceof PrioritizedCallable)) { - theCallable = new PrioritizedCallable() + theCallable = new PrioritizedCallable(DEFAULT_PRIORITY) { - @Override - public int getPriority() - { - return DEFAULT_PRIORITY; - } - @Override public T call() throws Exception { diff --git a/client/src/test/java/com/metamx/druid/query/PrioritizedExecutorServiceTest.java b/client/src/test/java/com/metamx/druid/query/PrioritizedExecutorServiceTest.java index b0ac2ab2ae2..b6ce2a9ee1c 100644 --- a/client/src/test/java/com/metamx/druid/query/PrioritizedExecutorServiceTest.java +++ b/client/src/test/java/com/metamx/druid/query/PrioritizedExecutorServiceTest.java @@ -76,14 +76,8 @@ public class PrioritizedExecutorServiceTest final ConcurrentLinkedQueue order = new ConcurrentLinkedQueue(); exec.submit( - new PrioritizedCallable() + new PrioritizedCallable(0) { - @Override - public int getPriority() - { - return 0; - } - @Override public Void call() throws Exception { @@ -94,14 +88,8 @@ public class PrioritizedExecutorServiceTest ); exec.submit( - new PrioritizedCallable() + new PrioritizedCallable(-1) { - @Override - public int getPriority() - { - return -1; - } - @Override public Void call() throws Exception { @@ -112,14 +100,8 @@ public class PrioritizedExecutorServiceTest } ); exec.submit( - new PrioritizedCallable() + new PrioritizedCallable(0) { - @Override - public int getPriority() - { - return 0; - } - @Override public Void call() throws Exception { @@ -130,14 +112,8 @@ public class PrioritizedExecutorServiceTest } ); exec.submit( - new PrioritizedCallable() + new PrioritizedCallable(2) { - @Override - public int getPriority() - { - return 2; - } - @Override public Void call() throws Exception { diff --git a/server/src/main/java/com/metamx/druid/http/ComputeNode.java b/server/src/main/java/com/metamx/druid/http/ComputeNode.java index dd124aabcf2..44abd781931 100644 --- a/server/src/main/java/com/metamx/druid/http/ComputeNode.java +++ b/server/src/main/java/com/metamx/druid/http/ComputeNode.java @@ -101,7 +101,7 @@ public class ComputeNode extends BaseServerNode getLifecycle(), getConfigFactory().buildWithReplacements( ExecutorServiceConfig.class, ImmutableMap.of("base_path", "druid.processing") - ), callable2 + ) ); final ExecutorService executorService = new MetricsEmittingExecutorService(