Github user CodingCat commented on a diff in the pull request:
https://github.com/apache/spark/pull/186#discussion_r11480540
--- Diff: core/src/main/scala/org/apache/spark/scheduler/DAGScheduler.scala
---
@@ -1128,13 +986,160 @@ class DAGScheduler(
}
def stop() {
- if (eventProcessActor != null) {
- eventProcessActor ! StopDAGScheduler
+ logInfo("Stopping DAGScheduler")
+ if (dagSchedulerActorSupervisor != null) {
+ dagSchedulerActorSupervisor ! PoisonPill.getInstance
--- End diff --
en.....what I was thinking when I wrote this line?.....
for why eventProcessActor.postStop() is called for two times...I think the
first time is that dagScheduler in DAGSchedulerSuite is stopped (in my previous
commit, dagScheduler.stop() is called after the end of every case), the second
time is SparkContext.stop() is called, because in the constructor of
SparkContext, there is another DAGScheduler being constructed, and
SparkContext.stop() includes DAGScheduler.stop()
---
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.
---