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

Avoid data inconsistent between primary and secondary replicas for the new region replication framework

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Won't Fix
    • 3.0.0-alpha-3
    • None
    • read replicas
    • None

    Description

      For the new region replication framework introduced by HBASE-26233, when we write the Mutation on primary region replica , if HRegion.doMiniBatchMutate throws a exception, for example ,WAL.sync throws a TimeoutIOException because sync timeout, the writing on primary region replica is failed and we could not query the Mutation on the primary region replica because of Mutation is not written to the MemStore, but the replication to the second replica may be successful because we always execute MultiVersionConcurrencyControl.WriteEntry.runCompletionAction in MultiVersionConcurrencyControl.complete , and we could get the Mutation on the secondary region replica, this inconsistency should be avoid even if it is short.
      But for WALUtil.writeMarker, we should always replicate to the second replica even though WAL.sync is failed, because we just want to sync region state to secondary replica.

      Attachments

        Issue Links

          Activity

            People

              comnetwork chenglei
              comnetwork chenglei
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: