Zhijie Shen created YARN-733:
--------------------------------

             Summary: TestNMClient fails occasionally
                 Key: YARN-733
                 URL: https://issues.apache.org/jira/browse/YARN-733
             Project: Hadoop YARN
          Issue Type: Bug
            Reporter: Zhijie Shen
            Assignee: Zhijie Shen


The problem happens at:
{code}
        // getContainerStatus can be called after stopContainer
        try {
          ContainerStatus status = nmClient.getContainerStatus(
              container.getId(), container.getNodeId(),
              container.getContainerToken());
          assertEquals(container.getId(), status.getContainerId());
          assertEquals(ContainerState.RUNNING, status.getState());
          assertTrue("" + i, status.getDiagnostics().contains(
              "Container killed by the ApplicationMaster."));
          assertEquals(-1000, status.getExitStatus());
        } catch (YarnRemoteException e) {
          fail("Exception is not expected");
        }
{code}

NMClientImpl#stopContainer returns, but container hasn't been stopped 
immediately. ContainerManangerImpl implements stopContainer in async style. 
Therefore, the container's status is in transition. 
NMClientImpl#getContainerStatus immediately after stopContainer will get either 
the RUNNING status or the COMPLETE one.

There will be the similar problem wrt NMClientImpl#startContainer.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to