Github user kanzhang commented on the pull request:
https://github.com/apache/spark/pull/306#issuecomment-39404001
Thanks for your comments. I just did a test of the ctrl+c case using Spark
Shell. When I used ctrl+c to exit the shell, both Executor log and Master log
showed that they detected app/driver disassociated. The Executor tries to shut
itself down with exit code 1. However, the Master's finishApplication() wins in
my test. Worker's log shows it accepted Master's request to kill the executor
and the executor's final state is KILLED. It could have happened the other way
with the executor exited with code 1, Worker marked its state as EXITED, and
Master tried to launch a replacement executor (since exit code is not 0), which
eventually got KILLED when Master detects app disassociated. Either way is fine
in my opinion. I don't think we need to force users to call stop(). It's just
that if it is not called, its executors may get KILLED.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---