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

Fix versioning such that every update is unique

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Closed
    • Major
    • Resolution: Incomplete
    • None
    • None
    • None
    • None

    Description

      I wanted to use checkAndPut but there is a case where the check will not fail though the cell has been updated: if a cell is update with exactly the value it had before, we'll not know its been changed. hbase-4507 did a checkAndPut where you could pass a timestamp as part of the check so we'd check the cell value AND that the timestamp was the same.

      This would work in most regards but one; an update is done in the same millisecond. This is generally impossible but in a distributed system where clocks drift and a region can be moved to a server whose clock is retarded, it is within the realm of possibilities that it could happen. So we should deal.

      One thought is that the version is made for sure unique. We could make the timestamp wider still so probability of the edits arriving within the same microsecond – or whatever it is that a double gives you – would require us to run through a couple of billion universe expand/contract cycles or we could have a monotonically increasing sequence id per millisecond.

      There could be some overlap between this issue and the persisting of rwcc to the filesystem (though not currently as rwcc is implemented).

      Attachments

        Activity

          People

            Unassigned Unassigned
            stack Michael Stack
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: