Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-7878

recoverFileLease does not check return value of recoverLease

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.94.6, 0.95.0
    • 0.98.0, 0.95.0
    • util
    • None
    • Reviewed
    • A new config parameter, hbase.lease.recovery.timeout, is introduced for the maximum duration recoverFileLease() would wait for any single file. Default is 5 minutes. If lease recovery doesn't succeed within this limit, append() would be called.

    Description

      I think this is a problem, so I'm opening a ticket so an HBase person takes a look.

      Apache Accumulo has moved its write-ahead log to HDFS. I modeled the lease recovery for Accumulo after HBase's lease recovery. During testing, we experienced data loss. I found it is necessary to wait until recoverLease returns true to know that the file has been truly closed. In FSHDFSUtils, the return result of recoverLease is not checked. In the unit tests created to check lease recovery in HBASE-2645, the return result of recoverLease is always checked.

      I think FSHDFSUtils should be modified to check the return result, and wait until it returns true.

      Attachments

        1. 7878.94
          7 kB
          Ted Yu
        2. 7878-94.addendum
          0.7 kB
          Ted Yu
        3. 7878-94.addendum2
          1 kB
          Ted Yu
        4. 7878-addendum.txt
          0.8 kB
          Ted Yu
        5. 7878-trunk.addendum
          1 kB
          Ted Yu
        6. 7878-trunk.addendum2
          1.0 kB
          Ted Yu
        7. 7878-trunk-v10.txt
          10 kB
          Ted Yu
        8. 7878-trunk-v11-test.txt
          5 kB
          Ted Yu
        9. 7878-trunk-v12.txt
          10 kB
          Ted Yu
        10. 7878-trunk-v13.txt
          12 kB
          Ted Yu
        11. 7878-trunk-v14.txt
          15 kB
          Ted Yu
        12. 7878-trunk-v15.patch
          16 kB
          ramkrishna.s.vasudevan
        13. 7878-trunk-v16.txt
          15 kB
          Ted Yu
        14. 7878-trunk-v2.txt
          1 kB
          Ted Yu
        15. 7878-trunk-v3.txt
          1 kB
          Ted Yu
        16. 7878-trunk-v4.txt
          2 kB
          Ted Yu
        17. 7878-trunk-v5.txt
          6 kB
          Ted Yu
        18. 7878-trunk-v6.txt
          7 kB
          Ted Yu
        19. 7878-trunk-v7.txt
          9 kB
          Ted Yu
        20. 7878-trunk-v8.txt
          9 kB
          Ted Yu
        21. 7878-trunk-v9.txt
          10 kB
          Ted Yu
        22. 7878-trunk-v9.txt
          10 kB
          Ted Yu
        23. HBase-7878-0.94.txt
          14 kB
          Liang Xie

        Issue Links

          Activity

            People

              yuzhihong@gmail.com Ted Yu
              ecn Eric C. Newton
              Votes:
              0 Vote for this issue
              Watchers:
              15 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: