Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-1779

After NameNode restart , Clients can not read partial files even after client invokes Sync.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.20-append
    • 0.20-append, 0.20.205.0
    • datanode, namenode
    • None
    • Linux

    • Reviewed

    Description

      In Append HDFS-200 issue,
      If file has 10 blocks and after writing 5 blocks if client invokes sync method then NN will persist the blocks information in edits.
      After this if we restart the NN, All the DataNodes will reregister with NN. But DataNodes are not sending the blocks being written information to NN. DNs are sending the blocksBeingWritten information in DN startup. So, here NameNode can not find that the 5 persisted blocks belongs to which datanodes. This information can build based on block reports from DN. Otherwise we will loose this 5 blocks information even NN persisted that block information in edits.

      Attachments

        1. bbwReportAppend.patch
          15 kB
          Hairong Kuang
        2. HDFS-1779.1.patch
          10 kB
          Uma Maheswara Rao G
        3. HDFS-1779.2.patch
          20 kB
          Uma Maheswara Rao G
        4. HDFS-1779.20Append.fix.patch
          1 kB
          Uma Maheswara Rao G
        5. HDFS-1779.2a.patch
          22 kB
          Uma Maheswara Rao G
        6. HDFS-1779.patch
          8 kB
          Uma Maheswara Rao G
        7. HDFS-1779-20.security.3.patch
          22 kB
          Jitendra Nath Pandey
        8. HDFS-1779-20.security.3-fixes.patch
          1 kB
          Eli Collins

        Issue Links

          Activity

            People

              umamaheswararao Uma Maheswara Rao G
              umamaheswararao Uma Maheswara Rao G
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: