>From Michael Blow <[email protected]>:
Michael Blow has uploaded this change for review. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19486 )
Change subject: Preserve interrupts, fix log typo
......................................................................
Preserve interrupts, fix log typo
Change-Id: Idcf26ce492f2b9a868a5f77f62a0f24ac2b9b70d
---
M
hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/WebManager.java
M
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
M
hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
3 files changed, 16 insertions(+), 7 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/86/19486/1
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 ac636b7..6df2e3c 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
@@ -65,6 +65,7 @@
import org.apache.hyracks.api.exceptions.HyracksDataException;
import org.apache.hyracks.api.job.JobId;
import org.apache.hyracks.api.job.JobStatus;
+import org.apache.hyracks.api.util.ExceptionUtils;
import org.apache.hyracks.api.util.InvokeUtil;
import org.apache.hyracks.util.ExitUtil;
import org.apache.hyracks.util.Span;
@@ -454,7 +455,8 @@
metadataProvider.getApplicationContext().getHcc().cancelJob(jobId);
} catch (Throwable th) {
LOGGER.warn("Failed to cancel active job {}", jobId, th);
- e.addSuppressed(th);
+ // use ExceptionUtils.suppress() here to ensure we don't lose an
interrupt
+ ExceptionUtils.suppress(e, th);
}
}
diff --git
a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
index 856979c..9f4ad5d 100644
---
a/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
+++
b/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
@@ -305,7 +305,7 @@
}
preCancelStackTraces.keySet().removeIf(Predicate.not(runningThreads::contains));
preCancelStackTraces.forEach((thread, stack) -> {
- Throwable t = new Throwable(thread.getName() + "pre-interrupt
stack");
+ Throwable t = new Throwable(thread.getName() + " pre-interrupt
stack");
t.setStackTrace(stack);
LOGGER.warn("Task of job {} did not complete within {}: ",
ctx.getJobletContext().getJobId(),
completionPoll, t);
diff --git
a/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/WebManager.java
b/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/WebManager.java
index b8347ae..3b17c06 100644
---
a/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/WebManager.java
+++
b/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/WebManager.java
@@ -22,6 +22,8 @@
import java.util.Collections;
import java.util.List;
+import org.apache.hyracks.api.util.ExceptionUtils;
+
import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.util.internal.logging.Log4J2LoggerFactory;
@@ -102,11 +104,7 @@
if (!stopExceptions.isEmpty()) {
Exception ex = null;
for (Exception stopException : stopExceptions) {
- if (ex == null) {
- ex = stopException;
- } else {
- ex.addSuppressed(stopException);
- }
+ ex = ExceptionUtils.suppress(ex, stopException);
}
throw ex;
}
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19486
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings
Gerrit-Project: asterixdb
Gerrit-Branch: ionic
Gerrit-Change-Id: Idcf26ce492f2b9a868a5f77f62a0f24ac2b9b70d
Gerrit-Change-Number: 19486
Gerrit-PatchSet: 1
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-MessageType: newchange