Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-733

TestNMClient fails occasionally

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 2.1.0-beta
    • None
    • None
    • Reviewed

    Description

      The problem happens at:

              // 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");
              }
      

      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.

      Attachments

        1. YARN-733.1.patch
          5 kB
          Zhijie Shen
        2. YARN-733.2.patch
          5 kB
          Zhijie Shen

        Issue Links

          Activity

            People

              zjshen Zhijie Shen
              zjshen Zhijie Shen
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: