You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Junegunn Choi (Jira)" <ji...@apache.org> on 2025/04/30 15:28:00 UTC
[jira] [Assigned] (HBASE-29279) Allow throttling alter operation using table configuration
[ https://issues.apache.org/jira/browse/HBASE-29279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Junegunn Choi reassigned HBASE-29279:
-------------------------------------
Assignee: Junegunn Choi
> Allow throttling alter operation using table configuration
> ----------------------------------------------------------
>
> Key: HBASE-29279
> URL: https://issues.apache.org/jira/browse/HBASE-29279
> Project: HBase
> Issue Type: Improvement
> Reporter: Junegunn Choi
> Assignee: Junegunn Choi
> Priority: Major
>
> h2. Problem
> HBASE-28215 introduced a mechanism to throttle region reopening during an alter operation. However, it relies on a global configuration parameter, so in order to change the throttling settings, you would have to deploy the new settings to the master server and restart it. This is not ideal because:
> 1. Your cluster may host tables with different service level objectives, each requiring different throttling policies.
> 2. You may want to tune throttling dynamically — for example, during off-peak hours — without repeatedly restarting the master server.
> h2. Suggestion
> Support table-specific configuration for throttling if provided.
> {code:java}
> # Use global defaults
> alter 't', { NAME => 'd', COMPRESSION => 'GZ' }
> # Apply custom throttling for this alter operation
> alter 't', { NAME => 'd', COMPRESSION => 'GZ' },
> {
> CONFIGURATION => {
> 'hbase.reopen.table.regions.progressive.batch.size.max' => 32,
> 'hbase.reopen.table.regions.progressive.batch.backoff.ms' => 500
> }
> }
> # Future alter operations on this table will reuse the throttling configuration
> alter 't', { NAME => 'd', COMPRESSION => 'GZ' }
> {code}
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)