Ngone51 commented on a change in pull request #24848: [SPARK-28014][core] All waiting apps will be changed to the wrong state of Running after master changed. URL: https://github.com/apache/spark/pull/24848#discussion_r294210840
########## File path: core/src/main/scala/org/apache/spark/deploy/master/Master.scala ########## @@ -561,7 +561,7 @@ private[deploy] class Master( apps.filter(_.state == ApplicationState.UNKNOWN).foreach(finishApplication) // Update the state of recovered apps to RUNNING - apps.filter(_.state == ApplicationState.WAITING).foreach(_.state = ApplicationState.RUNNING) + apps.filter(_.coresGranted > 0).foreach(_.state = ApplicationState.RUNNING) Review comment: I'm thinking that there may be a corner case where `_.coresGranted > 0` can not work. For example, in dynamic allocation mode, app A is running on HA Standalone. And master just happens to change during the time app A has released all of its executors, which result in `coresGranted=0`. Then, app A can't recover to RUNNING but remain in WAITING at this time. @zuotingbing @jerryshao ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org