Uploaded image for project: 'Hadoop Map/Reduce'
  1. Hadoop Map/Reduce
  2. MAPREDUCE-1607

Task controller may not set permissions for a task cleanup attempt's log directory

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.21.0
    • 0.21.0
    • task-controller
    • None
    • Incompatible change, Reviewed
    • Hide
      Fixed initialization of a task-cleanup attempt's log directory by setting correct permissions via task-controller. Added new log4j properties hadoop.tasklog.iscleanup and log4j.appender.TLA.isCleanup to conf/log4j.properties. Changed the userlogs for a task-cleanup attempt to go into its own directory instead of the original attempt directory. This is an incompatible change as old userlogs of cleanup attempt-dirs before this release will no longer be visible.
      Show
      Fixed initialization of a task-cleanup attempt's log directory by setting correct permissions via task-controller. Added new log4j properties hadoop.tasklog.iscleanup and log4j.appender.TLA.isCleanup to conf/log4j.properties. Changed the userlogs for a task-cleanup attempt to go into its own directory instead of the original attempt directory. This is an incompatible change as old userlogs of cleanup attempt-dirs before this release will no longer be visible.

    Description

      Task controller uses the INITIALIZE_TASK command to initialize task attempt and task log directories. For cleanup tasks, task attempt directories are named as task-attempt-id.cleanup. But log directories do not have the .cleanup suffix. The task controller is not aware of this distinction and tries to set permissions for log directories named task-attempt-id.cleanup. This is a NO-OP. Typically the task cleanup runs on the same node that ran the original task attempt as well. So, the task log directories are already properly initialized. However, the task cleanup can run on a node that has not run the original task attempt. In that case, the initialization would not happen and this could result in the cleanup task failing.

      Attachments

        1. patch-1607-2.txt
          52 kB
          Amareshwari Sriramadasu
        2. patch-1607-1.txt
          52 kB
          Amareshwari Sriramadasu
        3. patch-1607.txt
          52 kB
          Amareshwari Sriramadasu
        4. patch-1607-ydist.txt
          65 kB
          Amareshwari Sriramadasu

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            amareshwari Amareshwari Sriramadasu
            yhemanth Hemanth Yamijala
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment