[ 
https://issues.apache.org/jira/browse/HBASE-25549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17788828#comment-17788828
 ] 

Bryan Beaudreault commented on HBASE-25549:
-------------------------------------------

I'm curious how you plan to reopen regions with this feature. I don't think we 
have a user API for reopening regions. You can unassign and then assign, but 
that leaves you at risk of handling errors and recovery in your automation. 

I wonder if https://issues.apache.org/jira/browse/HBASE-28215 is better for 
handling RIT storms, since the hmaster procedure framework already has error 
handling and state recovery built in, just not throttling (yet).

I still like this feature for things like changing region normalizer target 
sizes and such, in which case I plan to never reopen the regions (until they 
reopen organically as regions move).

> Provide a switch that allows avoiding reopening all regions when modifying a 
> table to prevent RIT storms.
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-25549
>                 URL: https://issues.apache.org/jira/browse/HBASE-25549
>             Project: HBase
>          Issue Type: Improvement
>          Components: master, shell
>    Affects Versions: 3.0.0-alpha-1
>            Reporter: Zhuoyue Huang
>            Assignee: Zhuoyue Huang
>            Priority: Major
>             Fix For: 2.6.0, 3.0.0-beta-1, 2.5.7
>
>
> Under normal circumstances, modifying a table will cause all regions 
> belonging to the table to enter RIT. Imagine the following two scenarios:
>  # 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.
>  # 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.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to