Failure during Ignite Service.cancel() can break normal shutdown process. This closes
@@ -316,7 +316,16 @@ public class GridServiceProcessor extends GridProcessorAdapter implements Ignite
Service svc = ctx.service();
if (svc != null)
+ try {
svc.cancel(ctx);
+ }
+ catch (Throwable e) {
+ log.error("Failed to cancel service (ignoring) [name=" + ctx.name() +
+ ", execId=" + ctx.executionId() + ']', e);
+
+ if (e instanceof Error)
+ throw e;
+ }
ctx.executor().shutdownNow();
}
