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

Provide lazy mode when modifying table to avoid RIT storm

Add voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.0.0-alpha-1
    • 3.0.0-alpha-4
    • master, shell
    • None

    Description

      Under normal circumstances, modifying a table will cause all regions belonging to the table to enter RIT. Imagine the following two scenarios:

      1. Someone entered the wrong configuration (e.g. negative 'hbase.busy.wait.multiplier.max' value) when altering the table, causing thousands of online regions to fail to open, leading to online accidents.
      2. Modify the configuration of a table, but this modification is not urgent, the regions are not expected to enter RIT immediately.

      'alter_lazy' is a new command to modify a table without reopening any online regions except those regions were assigned by other threads or split etc.

       

      Provide an optional lazy_mode for the alter command to modify the TableDescriptor without the region entering the RIT. The modification will take effect when the region is reopened.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            GeorryHuang Zhuoyue Huang

            Dates

              Created:
              Updated:

              Slack

                Issue deployment