[
https://issues.apache.org/jira/browse/HBASE-28811?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rahul Agarkar updated HBASE-28811:
----------------------------------
Description:
While unassigning a region because of either a region movement or split/merge,
the master node sends a RPC to the region server where the region is currently
hosted. As part of this RPC, it also tells the region server whether the blocks
for the region being unassigned should be evicted from the cache. This is done
by passing a boolean parameter. The value for this parameter is found from
couple of configuration parameters seen on the master node. For example,
"hbase.rs.evictblocksonsplit" (if the region is being unassigned because of
split) or "hbase.rs.evictblocksonclose" (if the region is being moved from this
region server to some other region server).
With support for dynamic configuration, these configuration parameter values
may differ between the master node and the worker nodes.
Since, caching is managed by the worker nodes, we should use the configuration
values as seen on the worker nodes rather than the values seen on the master
node.
The master node should just tell the worker nodes if the region unassignment is
happening because of a split or a region movement and the worker nodes should
take the appropriate decision about evicting from cache depending on the
configuration seen there.
was:
While unassigning a region because of either a region movement or split/merge,
the master node sends a RPC to the region server where the region is currently
hosted. As part of this RPC, it also tells the region server whether the blocks
for the region being unassigned should be evicted from the cache. This is done
by passing a boolean parameter. The value for this parameter is found from
couple of configuration parameters seen on the master node. For example,
"hbase.rs.evictblocksonsplit" (if the region is being unassigned because of
split) or "hbase.rs.evictblocksonclose" (if the region is being moved from this
region server to some other region server).
With support for dynamic configuration, these configuration parameter values
may differ between the master node and the worker nodes.
Since, caching is managed by the worker nodes, we should use the configuration
values as seen on the worker nodes rather than the values seen on the master
node.
> Use region server configuration for evicting the cache while unassigning a
> region
> ---------------------------------------------------------------------------------
>
> Key: HBASE-28811
> URL: https://issues.apache.org/jira/browse/HBASE-28811
> Project: HBase
> Issue Type: Task
> Components: BucketCache
> Affects Versions: 2.6.0, 3.0.0-beta-1
> Reporter: Rahul Agarkar
> Assignee: Rahul Agarkar
> Priority: Major
>
> While unassigning a region because of either a region movement or
> split/merge, the master node sends a RPC to the region server where the
> region is currently hosted. As part of this RPC, it also tells the region
> server whether the blocks for the region being unassigned should be evicted
> from the cache. This is done by passing a boolean parameter. The value for
> this parameter is found from couple of configuration parameters seen on the
> master node. For example, "hbase.rs.evictblocksonsplit" (if the region is
> being unassigned because of split) or "hbase.rs.evictblocksonclose" (if the
> region is being moved from this region server to some other region server).
> With support for dynamic configuration, these configuration parameter values
> may differ between the master node and the worker nodes.
> Since, caching is managed by the worker nodes, we should use the
> configuration values as seen on the worker nodes rather than the values seen
> on the master node.
> The master node should just tell the worker nodes if the region unassignment
> is happening because of a split or a region movement and the worker nodes
> should take the appropriate decision about evicting from cache depending on
> the configuration seen there.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)