You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by jerryshao <gi...@git.apache.org> on 2015/12/21 11:26:43 UTC

[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

GitHub user jerryshao opened a pull request:

    https://github.com/apache/spark/pull/10412

    [SPARK-12447][YARN] Only update the states when executor is successfully launched

    The details is described in https://issues.apache.org/jira/browse/SPARK-12447.
    
    @vanzin Please help to review, thanks a lot.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/jerryshao/apache-spark SPARK-12447

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/spark/pull/10412.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #10412
    
----
commit 9923e587f9aa0cb2829c9db67d1302d54a0493bb
Author: jerryshao <ss...@hortonworks.com>
Date:   2015-12-21T10:22:21Z

    Only update the AM states when executor is successfully launched

----


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Jenkins, retest this please.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166269519
  
    Test FAILed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48108/
    Test FAILed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Merged build finished. Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by tgravescs <gi...@git.apache.org>.
Github user tgravescs commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-188494656
  
    ping @vanzin you had started reviewing this, do you have time to take another look?


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r66360322
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = synchronized {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    --- End diff --
    
    Hmm... instead of a Scala future and having to deal with implicits, how about something like:
    
    ```
    val runner = new ExecutorRunnable(...)
    launcherPool.submit(new Runnable() {
      override def run(): Unit = {
        try {
          runner.run()
         updateThings()
        } catch {
          ...
        }
      }
    })
    ```


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-168122939
  
    **[Test build #48533 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48533/consoleFull)** for PR 10412 at commit [`95d3bfb`](https://github.com/apache/spark/commit/95d3bfb624a051be3ea60d1062d4b947f8e51a18).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-168110874
  
    **[Test build #48533 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48533/consoleFull)** for PR 10412 at commit [`95d3bfb`](https://github.com/apache/spark/commit/95d3bfb624a051be3ea60d1062d4b947f8e51a18).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-168101106
  
    Thanks @vazin for your comments, I will update the codes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166271610
  
    Jenkins, retest this please.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166276972
  
    Merged build finished. Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    **[Test build #60251 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/60251/consoleFull)** for PR 10412 at commit [`fba6e5c`](https://github.com/apache/spark/commit/fba6e5c3cb2e03dc0a552cacecd6c986a10b75ef).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r48637040
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = {
    --- End diff --
    
    This method is not thread-safe; it's running in the executor launcher pool and updating shared data structures that are not thread-safe.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r48637113
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    +          new ExecutorRunnable(
    +            container,
    +            conf,
    +            sparkConf,
    +            driverUrl,
    +            executorId,
    +            executorHostname,
    +            executorMemory,
    +            executorCores,
    +            appAttemptId.getApplicationId.toString,
    +            securityMgr)
    +            .run()
    +        }
    +
    +        future onSuccess {
    --- End diff --
    
    nit: `future.onSuccess {` (also below for `onFailure`).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    LGTM, merging to master / 2.0.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/60250/
    Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    **[Test build #60250 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/60250/consoleFull)** for PR 10412 at commit [`fba6e5c`](https://github.com/apache/spark/commit/fba6e5c3cb2e03dc0a552cacecd6c986a10b75ef).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    **[Test build #60251 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/60251/consoleFull)** for PR 10412 at commit [`fba6e5c`](https://github.com/apache/spark/commit/fba6e5c3cb2e03dc0a552cacecd6c986a10b75ef).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166267110
  
    **[Test build #48108 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48108/consoleFull)** for PR 10412 at commit [`9923e58`](https://github.com/apache/spark/commit/9923e587f9aa0cb2829c9db67d1302d54a0493bb).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    This one fell through my radar... @jerryshao could you resolve conflicts and look at the comments? thx


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/spark/pull/10412


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166269485
  
    **[Test build #48108 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48108/consoleFull)** for PR 10412 at commit [`9923e58`](https://github.com/apache/spark/commit/9923e587f9aa0cb2829c9db67d1302d54a0493bb).
     * This patch **fails Spark unit tests**.
     * This patch merges cleanly.
     * This patch adds no public classes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r48637157
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    +          new ExecutorRunnable(
    +            container,
    +            conf,
    +            sparkConf,
    +            driverUrl,
    +            executorId,
    +            executorHostname,
    +            executorMemory,
    +            executorCores,
    +            appAttemptId.getApplicationId.toString,
    +            securityMgr)
    +            .run()
    +        }
    +
    +        future onSuccess {
    +          case _ =>
    +            // Only change the state when executor is successfully launched.
    +            updateInternalState()
    +        }
    --- End diff --
    
    Minor, but it might be better to use `ThreadUtils.sameThread` here instead of re-queuing the callback into the launcher thread pool for execution.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166272395
  
    **[Test build #48113 has started](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48113/consoleFull)** for PR 10412 at commit [`9923e58`](https://github.com/apache/spark/commit/9923e587f9aa0cb2829c9db67d1302d54a0493bb).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-168123071
  
    Merged build finished. Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/60251/
    Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166269517
  
    Merged build finished. Test FAILed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r66359813
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = synchronized {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    +          new ExecutorRunnable(
    +            container,
    +            conf,
    +            sparkConf,
    +            driverUrl,
    +            executorId,
    +            executorHostname,
    +            executorMemory,
    +            executorCores,
    +            appAttemptId.getApplicationId.toString,
    +            securityMgr)
    +            .run()
    +        }
    +
    +        future.onSuccess {
    +          case _ =>
    +            // Only change the state when executor is successfully launched.
    +            updateInternalState()
    +        }(ThreadUtils.sameThread)
    +
    +        future.onFailure {
    +          case NonFatal(e) =>
    +            logError(s"Failed to launch executor $executorId on container $containerId", e)
    +            // Assigned container should be released immediately to avoid unnecessary resource
    +            // occupation.
    +            amClient.releaseAssignedContainer(containerId)
    +          case t => throw t
    --- End diff --
    
    nit: not needed? This also should cause a compiler warning (matching on Throwable).


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Sure, I will do it.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166276976
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48113/
    Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    Merged build finished. Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r66532257
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = synchronized {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    --- End diff --
    
    It's not a potential problem, it just seems like less code to use the Java executor instead.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r66532121
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = synchronized {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    --- End diff --
    
    @vanzin , what is the potential problem of using Scala Future and implicit value?


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-166276890
  
    **[Test build #48113 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/48113/consoleFull)** for PR 10412 at commit [`9923e58`](https://github.com/apache/spark/commit/9923e587f9aa0cb2829c9db67d1302d54a0493bb).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark issue #10412: [SPARK-12447][YARN] Only update the states when executor...

Posted by SparkQA <gi...@git.apache.org>.
Github user SparkQA commented on the issue:

    https://github.com/apache/spark/pull/10412
  
    **[Test build #60250 has finished](https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/60250/consoleFull)** for PR 10412 at commit [`fba6e5c`](https://github.com/apache/spark/commit/fba6e5c3cb2e03dc0a552cacecd6c986a10b75ef).
     * This patch passes all tests.
     * This patch merges cleanly.
     * This patch adds no public classes.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request #10412: [SPARK-12447][YARN] Only update the states when e...

Posted by jerryshao <gi...@git.apache.org>.
Github user jerryshao commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r66532615
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -399,40 +402,61 @@ private[yarn] class YarnAllocator(
        */
       private def runAllocatedContainers(containersToUse: ArrayBuffer[Container]): Unit = {
         for (container <- containersToUse) {
    -      numExecutorsRunning += 1
    -      assert(numExecutorsRunning <= targetNumExecutors)
    +      executorIdCounter += 1
           val executorHostname = container.getNodeId.getHost
           val containerId = container.getId
    -      executorIdCounter += 1
           val executorId = executorIdCounter.toString
    -
           assert(container.getResource.getMemory >= resource.getMemory)
    -
           logInfo("Launching container %s for on host %s".format(containerId, executorHostname))
    -      executorIdToContainer(executorId) = container
    -      containerIdToExecutorId(container.getId) = executorId
    -
    -      val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    -        new HashSet[ContainerId])
    -
    -      containerSet += containerId
    -      allocatedContainerToHostMap.put(containerId, executorHostname)
    -
    -      val executorRunnable = new ExecutorRunnable(
    -        container,
    -        conf,
    -        sparkConf,
    -        driverUrl,
    -        executorId,
    -        executorHostname,
    -        executorMemory,
    -        executorCores,
    -        appAttemptId.getApplicationId.toString,
    -        securityMgr)
    +
    +      def updateInternalState(): Unit = synchronized {
    +        numExecutorsRunning += 1
    +        assert(numExecutorsRunning <= targetNumExecutors)
    +        executorIdToContainer(executorId) = container
    +        containerIdToExecutorId(container.getId) = executorId
    +
    +        val containerSet = allocatedHostToContainersMap.getOrElseUpdate(executorHostname,
    +          new HashSet[ContainerId])
    +        containerSet += containerId
    +        allocatedContainerToHostMap.put(containerId, executorHostname)
    +      }
    +
           if (launchContainers) {
             logInfo("Launching ExecutorRunnable. driverUrl: %s,  executorHostname: %s".format(
               driverUrl, executorHostname))
    -        launcherPool.execute(executorRunnable)
    +
    +        val future = Future {
    --- End diff --
    
    I see, I don't have a strong opinion on either, let me change it.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by vanzin <gi...@git.apache.org>.
Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/10412#discussion_r48636815
  
    --- Diff: yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnAllocator.scala ---
    @@ -24,6 +24,8 @@ import java.util.regex.Pattern
     import scala.collection.mutable
     import scala.collection.mutable.{ArrayBuffer, HashMap, HashSet}
     import scala.collection.JavaConverters._
    +import scala.concurrent.{Future, ExecutionContext}
    --- End diff --
    
    nit: order


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org


[GitHub] spark pull request: [SPARK-12447][YARN] Only update the states whe...

Posted by AmplabJenkins <gi...@git.apache.org>.
Github user AmplabJenkins commented on the pull request:

    https://github.com/apache/spark/pull/10412#issuecomment-168123074
  
    Test PASSed.
    Refer to this link for build results (access rights to CI server needed): 
    https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/48533/
    Test PASSed.


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org