Hadoop Map/Reduce
  1. Hadoop Map/Reduce
  2. MAPREDUCE-3027

MR-279: Completed container exit state needs to be enhanced to differentiate between container aborts/failures and actual application process exit codes

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: 0.23.0
    • Fix Version/s: 2.0.0-alpha
    • Component/s: mrv2
    • Labels:
      None
    • Tags:
      mr2,mapreduce-2.0

      Description

      Currently, a completed container's exit status is set to -100 to denote the container being killed by the framework either as a result of the application releasing the container or a node failure. An application process may also return an exit code of -100 creating an ambiguity.

        Activity

        Hide
        Vinod Kumar Vavilapalli added a comment -

        Oh yeah, this must've been a mistake in MAPREDUCE-2896. We should bump YarnConfiguration.ABORTED_CONTAINER_EXIT_STATUS to -2000 or something like that. I also see another ref to "-100" in ContainerStatus+75, can you fix that too?

        Show
        Vinod Kumar Vavilapalli added a comment - Oh yeah, this must've been a mistake in MAPREDUCE-2896 . We should bump YarnConfiguration.ABORTED_CONTAINER_EXIT_STATUS to -2000 or something like that. I also see another ref to "-100" in ContainerStatus+75, can you fix that too?
        Hide
        Hitesh Shah added a comment -

        Both unix and windows use positive range exit status values. ( unix 0-255, windows uses signed 32-bit int but used range seems to be 0-15000+). Therefore, given that we use an int, we are quite safe for now.

        The literals in ContainerStatus are there as using the actual variable name will require creating a dependency on yarn-common from yarn-api and that will create a cyclic dependency. Leaving the literal as is for now and just closing out this jira as invalid.

        Show
        Hitesh Shah added a comment - Both unix and windows use positive range exit status values. ( unix 0-255, windows uses signed 32-bit int but used range seems to be 0-15000+). Therefore, given that we use an int, we are quite safe for now. The literals in ContainerStatus are there as using the actual variable name will require creating a dependency on yarn-common from yarn-api and that will create a cyclic dependency. Leaving the literal as is for now and just closing out this jira as invalid.

          People

          • Assignee:
            Hitesh Shah
            Reporter:
            Hitesh Shah
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development