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

Coprocessor failure during batchmutation leaves the memstore datastructs in an inconsistent state

    XMLWordPrintableJSON

Details

    • Reviewed
    • Promotes an -ea assert to logged FATAL and RS abort when memstore is found to be in an inconsistent state.

    Description

      Observed this in the testing with Phoenix. The test in Phoenix - MutableIndexFailureIT deliberately fails the batchmutation call via the installed coprocessor. But the update is not rolled back. That leaves the memstore inconsistent. In particular, I observed that getFlushableSize is updated before the coprocessor was called but the update is not rolled back. When the region is being closed at some later point, the assert introduced in HBASE-10514 in the HRegion.doClose() causes the RegionServer to shutdown abnormally.

      Attachments

        1. HBASE-10844.02-branch-1.0.patch
          2 kB
          Nick Dimiduk
        2. HBASE-10844.02-0.98.patch
          2 kB
          Nick Dimiduk
        3. HBASE-10844.02.patch
          2 kB
          Nick Dimiduk
        4. 10844-v2.patch
          1 kB
          Nick Dimiduk
        5. 10844-1-0.98.txt
          1 kB
          Devaraj Das
        6. 10844-1.txt
          1 kB
          Devaraj Das

        Activity

          People

            ndimiduk Nick Dimiduk
            ddas Devaraj Das
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: