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

killApplication doesn't fully kill application master on Mac OS

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • None
    • None
    • None
    • Failed on MacOS. OK on Linux

    Description

      When client sends a ClientRMProtocol#killApplication to RM, the corresponding AM is supposed to be killed. However, on Mac OS, the AM is still alive (w/o any interruption).

      I figured out part of the reason after some debugging. NM starts a AM with command like "/bin/bash -c /path/to/java SampleAM". This command is executed in a process (say with PID 0001), which starts another Java process (say with PID 0002). When NM kills the AM, it send SIGTERM and then SIGKILL to the bash process (PID 0001). In Linux, the death of the bash process (PID 0001) will trigger the kill of the Java process (PID 0002). However, in Mac OS, only the bash process is killed. The Java process is in the wild since then.

      Note: on Mac OS, DefaultContainerExecutor is used rather than LinuxContainerExecutor.

      Attachments

        Issue Links

          Activity

            People

              xgong Xuan Gong
              bowang Bo Wang
              Votes:
              0 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: