Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-3584 Allow atomic put/delete in one call
  3. HBASE-5203

Group atomic put/delete operation into a single WALEdit to handle region server failures.

    Details

    • Hadoop Flags:
      Reviewed

      Description

      HBASE-3584 does not not provide fully atomic operation in case of region server failures (see explanation there).

      What should happen is that either (1) all edits are applied via a single WALEdit, or (2) the WALEdits are applied in async mode and then sync'ed together.

      For #1 it is not clear whether it is advisable to manage multiple different operations (Put/Delete) via a single WAL edit. A quick check reveals that WAL replay on region startup would work, but that replication would need to be adapted. The refactoring needed would be non-trivial.

      #2 Might actually not work, as another operation could request sync'ing a later edit and hence flush these entries out as well.

      Addendum:
      The attached patch implements #1 and fixes replication to be able to deal with different operations being grouped in one WALEdit.

        Attachments

        1. 5203.txt
          23 kB
          Lars Hofhansl
        2. 5203-v3.txt
          26 kB
          Lars Hofhansl

          Activity

            People

            • Assignee:
              lhofhansl Lars Hofhansl
              Reporter:
              lhofhansl Lars Hofhansl
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: