RexXiong commented on PR #3672: URL: https://github.com/apache/celeborn/pull/3672#issuecomment-4671300326
One more thought — I'm not sure `TaskKilledException` is the right exception type here. `TaskKilledException` semantically means "this task was killed externally" (speculative execution cancellation, stage abort, etc.). But iterator-not-fully-consumed is a **data correctness issue**, not a kill event. Using `TaskKilledException` here has a few consequences: 1. **Spark scheduler may not retry** — `TaskKilledException` is treated as a legitimate kill, not a task failure. The scheduler may skip retry, silently swallowing a real data integrity problem. 2. **Misleading metrics/logs** — ops sees "TaskKilled" and assumes speculative execution or stage cancellation, not a data bug. 3. **`task.killed` metric pollution** — inflates kill counts with events that aren't actual kills. An `IOException` or `CelebornIOException` would be more appropriate — it signals a genuine failure, triggers normal retry, and shows up correctly in monitoring. *Reviewed with Claude Code* -- 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]
