corgy-w commented on code in PR #10075:
URL: https://github.com/apache/seatunnel/pull/10075#discussion_r2618068438
##########
seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/dag/physical/SubPlan.java:
##########
@@ -503,6 +509,22 @@ public void restorePipeline() {
}
}
+ public void stopPipelineWithCheckpointFallback() {
+ if (jobMaster.getCheckpointManager() == null) {
+ forceStopPipeline();
+ return;
+ }
+ if (jobMaster.getCheckpointManager().isCompletedPipeline(pipelineId)) {
+ forcePipelineFinish();
+ } else {
+ log.warn(
+ "Failed to stop the pipeline gracefully. Falling back to
forced stop: {}",
+ pipelineFullName);
+ cancelCheckpointCoordinator();
Review Comment:
Good question. As far as I understand, `cancelCheckpointCoordinator()` is
existing logic that we are reusing here. My only concern is whether this call
itself has any risk of getting stuck while trying to cancel. If it does not
block indefinitely in practice, then I think the current approach in this PR is
acceptable and we don’t need extra handling.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]