This is an automated email from the ASF dual-hosted git repository. heneveld pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git
commit 7844795e2fbd680331e21f8c7a231f975168d656 Author: Alex Heneveld <[email protected]> AuthorDate: Wed May 24 00:23:03 2023 +0100 more thorough cancellation of DST jobs --- .../java/org/apache/brooklyn/util/core/task/DynamicSequentialTask.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/src/main/java/org/apache/brooklyn/util/core/task/DynamicSequentialTask.java b/core/src/main/java/org/apache/brooklyn/util/core/task/DynamicSequentialTask.java index 7d10b3124c..ed76e7b12c 100644 --- a/core/src/main/java/org/apache/brooklyn/util/core/task/DynamicSequentialTask.java +++ b/core/src/main/java/org/apache/brooklyn/util/core/task/DynamicSequentialTask.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Map; import java.util.Queue; import java.util.concurrent.Callable; +import java.util.concurrent.CancellationException; import java.util.concurrent.ConcurrentLinkedQueue; import org.apache.brooklyn.api.mgmt.HasTaskChildren; @@ -297,6 +298,7 @@ public class DynamicSequentialTask<T> extends BasicTask<T> implements HasTaskChi List<Object> result = new ArrayList<Object>(); try { while (!secondaryQueueAborted && (!primaryFinished || !secondaryJobsRemaining.isEmpty())) { + if (isCancelled()) throw new CancellationException(); synchronized (jobTransitionLock) { if (!primaryFinished && secondaryJobsRemaining.isEmpty()) { currentSecondary = null; @@ -306,6 +308,7 @@ public class DynamicSequentialTask<T> extends BasicTask<T> implements HasTaskChi @SuppressWarnings("rawtypes") Task secondaryJob = secondaryJobsRemaining.poll(); if (secondaryJob != null) { + if (isCancelled()) throw new CancellationException(); synchronized (jobTransitionLock) { currentSecondary = secondaryJob; submitBackgroundInheritingContext(secondaryJob);
