Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-3517

The last InMemory merge may be missed

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

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 0.18.0
    • 0.18.0
    • None
    • None
    • Reviewed

    Description

      This is post HADOOP-3366. The inmem merge thread has the loop:

              while (!exitInMemMerge) {
                  ramManager.waitForDataToMerge();
                  doInMemMerge();
                }
      

      The fetchOutputs, at the end of copying everything, does the following:

              exitInMemMerge = true; 
              ramManager.close();
      

      Now if the merge thread is doing a merge (inside the doInMemMerge method) when the exitInMemMerge is set to true, the loop will break and the last merge of the files that got shuffled recently will be skipped. ramManager.close(), that internally does a final notify to the merge thread also won't have any effect in this case.

      Attachments

        1. HADOOP-3517_2_20080611.patch
          18 kB
          Arun Murthy
        2. HADOOP-3517_2_20080611.patch
          92 kB
          Arun Murthy
        3. HADOOP-3517_2_20080611.patch
          15 kB
          Arun Murthy
        4. HADOOP-3517_1_20080610.patch
          14 kB
          Arun Murthy

        Issue Links

        Activity

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

          People

            acmurthy Arun Murthy
            ddas Devaraj Das
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment