DRILL-6286: Fixed incorrect reference to shutdown in drillbit.log closes #1196
Project: http://git-wip-us.apache.org/repos/asf/drill/repo Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/2601cdd3 Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/2601cdd3 Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/2601cdd3 Branch: refs/heads/master Commit: 2601cdd33e0685f59a7bf2ac72541bd9dcaaa18f Parents: 56b943b Author: dvjyothsna <[email protected]> Authored: Thu Mar 29 17:11:49 2018 -0700 Committer: Vitalii Diravka <[email protected]> Committed: Sun Apr 29 23:20:54 2018 +0300 ---------------------------------------------------------------------- .../java/org/apache/drill/exec/work/WorkManager.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/drill/blob/2601cdd3/exec/java-exec/src/main/java/org/apache/drill/exec/work/WorkManager.java ---------------------------------------------------------------------- diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/work/WorkManager.java b/exec/java-exec/src/main/java/org/apache/drill/exec/work/WorkManager.java index 662a336..d2a5a64 100644 --- a/exec/java-exec/src/main/java/org/apache/drill/exec/work/WorkManager.java +++ b/exec/java-exec/src/main/java/org/apache/drill/exec/work/WorkManager.java @@ -85,7 +85,7 @@ public class WorkManager implements AutoCloseable { private final Executor executor; private final StatusThread statusThread; private final Lock isEmptyLock = new ReentrantLock(); - private final Condition isEmptyCondition = isEmptyLock.newCondition(); + private Condition isEmptyCondition; /** * How often the StatusThread collects statistics about running fragments. @@ -169,6 +169,7 @@ public class WorkManager implements AutoCloseable { public void waitToExit(final boolean forcefulShutdown) { isEmptyLock.lock(); + isEmptyCondition = isEmptyLock.newCondition(); try { if (forcefulShutdown) { @@ -218,13 +219,13 @@ public class WorkManager implements AutoCloseable { private void indicateIfSafeToExit() { isEmptyLock.lock(); try { - logger.info("Waiting for "+ queries.size() +" queries to complete before shutting down"); - logger.info("Waiting for "+ runningFragments.size() +" running fragments to complete before shutting down"); + if (isEmptyCondition != null) { + logger.info("Waiting for {} running queries before shutting down.", queries.size()); + logger.info("Waiting for {} running fragments before shutting down.", runningFragments.size()); - if (!areQueriesAndFragmentsEmpty()) { - logger.info("New Fragments or queries are added while drillbit is Shutting down"); - } else { - isEmptyCondition.signal(); + if (areQueriesAndFragmentsEmpty()) { + isEmptyCondition.signal(); + } } } finally { isEmptyLock.unlock();
