HBase
  1. HBase
  2. HBASE-2856

TestAcidGuarantee broken on trunk

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: 0.89.20100621
    • Fix Version/s: 0.94.0
    • Component/s: None
    • Labels:
      None

      Description

      TestAcidGuarantee has a test whereby it attempts to read a number of columns from a row, and every so often the first column of N is different, when it should be the same. This is a bug deep inside the scanner whereby the first peek() of a row is done at time T then the rest of the read is done at T+1 after a flush, thus the memstoreTS data is lost, and previously 'uncommitted' data becomes committed and flushed to disk.

      One possible solution is to introduce the memstoreTS (or similarly equivalent value) to the HFile thus allowing us to preserve read consistency past flushes. Another solution involves fixing the scanners so that peek() is not destructive (and thus might return different things at different times alas).

      1. 2856-0.92.txt
        92 kB
        Lars Hofhansl
      2. 2856-v2.txt
        41 kB
        stack
      3. 2856-v3.txt
        77 kB
        stack
      4. 2856-v4.txt
        90 kB
        stack
      5. 2856-v5.txt
        111 kB
        stack
      6. 2856-v6.txt
        40 kB
        Amitanand Aiyer
      7. 2856-v7.txt
        67 kB
        Amitanand Aiyer
      8. 2856-v8.txt
        40 kB
        Amitanand Aiyer
      9. 2856-v9-all-inclusive.txt
        100 kB
        Amitanand Aiyer
      10. acid.txt
        10 kB
        stack

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Amitanand Aiyer
              Reporter:
              ryan rawson
            • Votes:
              0 Vote for this issue
              Watchers:
              21 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development