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

Catalog Janitor logic bug causes region leackage

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.90.4
    • 0.90.5
    • master
    • None
    • Reviewed

    Description

      When region split takes a significant amount of time, CatalogJanitor can cleanup one of SPLIT records, but left another in META. When another split finish, janitor cleans left SPLIT record, but parent regions haven't removed from FS and META not cleared.

      The race condition is follows:
      1. region split started
      2. one of regions splitted, i.e. A (have no reference storefiles) but other (B) doesn't
      3. janitor started and in routine checkDaughter removes SPLITA from meta, but see that SPLITB has references and does nothing.
      4. region B completes split
      5. janitor wakes up, removes SPLITB, but see that there is no records for A and does nothing again.

      Result - parent region hangs forever.

      Attachments

        Activity

          People

            shmuma Max Lapan
            shmuma Max Lapan
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: