Ngone51 commented on code in PR #43954:
URL: https://github.com/apache/spark/pull/43954#discussion_r1409325407
##########
core/src/main/scala/org/apache/spark/scheduler/TaskSetManager.scala:
##########
@@ -1004,6 +1004,17 @@ private[spark] class TaskSetManager(
maybeFinishTaskSet()
}
+ // Suspends this TSM to avoid launching new tasks.
+ //
+ // Unlike `abort()`, this function intentionally to not notify DAGScheduler
to avoid
+ // redundant operations. So the invocation to this function should assume
DAGScheduler
Review Comment:
It's not expensive. The operation ("abort stage") is a noop in the end as I
mentioned at https://github.com/apache/spark/pull/43954/files#r1402869071. I
want to remove "abort stage" because I think it's not a right behaviour. "abort
stage" always means any active jobs that depends on it needs to fail. So it
doesn't make sense to me, for example, when a result stage succeeds and the job
succeeds, but in turn we needs to cancel straggle running tasks in that result
stage and abort that stage. The "abort" here will try to fail the job (which
already succeeds) but just doesn't happen today because DAGScheduler is
thread-safe and the succeeded job have been removed from the acive job list.
If we want to be conservative, I'm fine to keep as it is.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]