You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by am...@apache.org on 2018/08/07 18:56:26 UTC
asterixdb git commit: [NO ISSUE][ING] Set JobId in thread waiting for
job to complete
Repository: asterixdb
Updated Branches:
refs/heads/master 53f4f6f48 -> 1f821f2b2
[NO ISSUE][ING] Set JobId in thread waiting for job to complete
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- When stopping an active job, set the job Id in the thread to enable
debugging if the job gets stuck.
Change-Id: Ic19d11f150aa404522133d4d7227c758dbf0de6a
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2850
Sonar-Qube: Jenkins <je...@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Contrib: Jenkins <je...@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mh...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/asterixdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/asterixdb/commit/1f821f2b
Tree: http://git-wip-us.apache.org/repos/asf/asterixdb/tree/1f821f2b
Diff: http://git-wip-us.apache.org/repos/asf/asterixdb/diff/1f821f2b
Branch: refs/heads/master
Commit: 1f821f2b25cc529dc55e566f4ca5bf1cafbf0ce9
Parents: 53f4f6f
Author: Abdullah Alamoudi <ba...@gmail.com>
Authored: Mon Aug 6 16:29:04 2018 -0700
Committer: abdullah alamoudi <ba...@gmail.com>
Committed: Tue Aug 7 11:56:02 2018 -0700
----------------------------------------------------------------------
.../src/main/java/org/apache/asterix/active/ActiveManager.java | 2 --
.../apache/asterix/api/http/server/NCQueryServiceServlet.java | 3 ++-
.../apache/asterix/app/active/ActiveEntityEventsListener.java | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/asterixdb/blob/1f821f2b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveManager.java
----------------------------------------------------------------------
diff --git a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveManager.java b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveManager.java
index 6373d6c..4adffda 100644
--- a/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveManager.java
+++ b/asterixdb/asterix-active/src/main/java/org/apache/asterix/active/ActiveManager.java
@@ -172,8 +172,6 @@ public class ActiveManager {
executor.execute(() -> {
try {
stopIfRunning(runtime, content.getTimeout(), content.getUnit());
- } catch (Exception e) {
- LOGGER.warn("Failed to stop runtime: {}", runtimeId, e);
} catch (Throwable th) {
LOGGER.warn("Failed to stop runtime: {}", runtimeId, th);
ExitUtil.halt(ExitUtil.EC_UNCAUGHT_THROWABLE);
http://git-wip-us.apache.org/repos/asf/asterixdb/blob/1f821f2b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCQueryServiceServlet.java
----------------------------------------------------------------------
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCQueryServiceServlet.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCQueryServiceServlet.java
index 77b8647..362f924 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCQueryServiceServlet.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/NCQueryServiceServlet.java
@@ -45,8 +45,8 @@ import org.apache.asterix.translator.ResultProperties;
import org.apache.asterix.translator.SessionOutput;
import org.apache.commons.lang3.tuple.Triple;
import org.apache.hyracks.api.application.INCServiceContext;
-import org.apache.hyracks.api.result.ResultSetId;
import org.apache.hyracks.api.job.JobId;
+import org.apache.hyracks.api.result.ResultSetId;
import org.apache.hyracks.http.api.IChannelClosedHandler;
import org.apache.hyracks.http.api.IServletRequest;
import org.apache.hyracks.http.server.HttpServer;
@@ -144,6 +144,7 @@ public class NCQueryServiceServlet extends QueryServiceServlet {
CancelQueryRequest cancelQueryMessage =
new CancelQueryRequest(nodeId, cancelQueryFuture.getFutureId(), clientContextID);
// TODO(mblow): multicc -- need to send cancellation to the correct cc
+ LOGGER.info("Cancelling query due to {}", exception.getClass().getSimpleName());
messageBroker.sendMessageToPrimaryCC(cancelQueryMessage);
if (wait) {
cancelQueryFuture.get(ExecuteStatementRequestMessage.DEFAULT_QUERY_CANCELLATION_WAIT_MILLIS,
http://git-wip-us.apache.org/repos/asf/asterixdb/blob/1f821f2b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
----------------------------------------------------------------------
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
index b5432c5..22c9b5d 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
@@ -450,7 +450,9 @@ public abstract class ActiveEntityEventsListener implements IActiveEntityControl
}
WaitForStateSubscriber subscriber = new WaitForStateSubscriber(this, waitFor);
// Note: once we start sending stop messages, we can't go back until the entity is stopped
+ final String nameBefore = Thread.currentThread().getName();
try {
+ Thread.currentThread().setName(nameBefore + " : WaitForCompletionForJobId: " + jobId);
sendStopMessages(metadataProvider, timeout, unit);
LOGGER.log(Level.DEBUG, "Waiting for its state to become " + waitFor);
subscriber.sync();
@@ -460,6 +462,8 @@ public abstract class ActiveEntityEventsListener implements IActiveEntityControl
Thread.currentThread().interrupt();
} catch (Throwable e) {
forceStop(subscriber, e);
+ } finally {
+ Thread.currentThread().setName(nameBefore);
}
}