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

LCE: Race condition leaves dangling cgroups entries for killed containers



    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 2.2.0
    • 2.3.0
    • nodemanager
    • None
    • Reviewed


      When LCE & cgroups are enabled, when a container is is killed (in this case by its owning AM, an MRAM) it seems to be a race condition at OS level when doing a SIGTERM/SIGKILL and when the OS does all necessary cleanup.

      LCE code, after sending the SIGTERM/SIGKILL and getting the exitcode, immediately attempts to clean up the cgroups entry for the container. But this is failing with an error like:

      2013-10-07 15:21:24,359 WARN org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor: Exit code from container container_1381179532433_0016_01_000011 is : 143
      2013-10-07 15:21:24,359 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container: Processing container_1381179532433_0016_01_000011 of type UPDATE_DIAGNOSTICS_MSG
      2013-10-07 15:21:24,359 DEBUG org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler: deleteCgroup: /run/cgroups/cpu/hadoop-yarn/container_1381179532433_0016_01_000011
      2013-10-07 15:21:24,359 WARN org.apache.hadoop.yarn.server.nodemanager.util.CgroupsLCEResourcesHandler: Unable to delete cgroup at: /run/cgroups/cpu/hadoop-yarn/container_1381179532433_0016_01_000011

      CgroupsLCEResourcesHandler.clearLimits() has logic to wait for 500 ms for AM containers to avoid this problem. it seems this should be done for all containers.

      Still, waiting for extra 500ms seems too expensive.

      We should look at a way of doing this in a more 'efficient way' from time perspective, may be spinning while the deleteCgroup() cannot be done with a minimal sleep and a timeout.


        1. YARN-1284.patch
          9 kB
          Alejandro Abdelnur
        2. YARN-1284.patch
          9 kB
          Alejandro Abdelnur
        3. YARN-1284.patch
          9 kB
          Alejandro Abdelnur
        4. YARN-1284.patch
          9 kB
          Alejandro Abdelnur
        5. YARN-1284.patch
          9 kB
          Alejandro Abdelnur



            tucu00 Alejandro Abdelnur
            tucu00 Alejandro Abdelnur
            0 Vote for this issue
            6 Start watching this issue