[ 
https://issues.apache.org/jira/browse/HBASE-26726?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Kyle Purtell updated HBASE-26726:
----------------------------------------
    Description: 
We have encountered two issues with region warmup before the assignment manager 
gracefully moves a region from one regionserver to another. 

The first instance is HBASE-26722. Part of the failure chain is temporary 
double assignment like conditions where both the source and destination 
regionservers think they have exclusive rights to storefile management (as they 
should) but warmup opens a region before it is closed and then both 
regionservers take compaction related actions. While this can be remediated 
with more care to this case, it is unclear if warmup affords significant 
advantage. The motivation of the original commit in 2015 introducing this 
feature was avoidance of blockcache misses once region ownership transfer was 
advertised to clients. Depending on use case and additional default-false 
schema options (like preload) this could be valuable. Or not.

The second instance is in place upgrade from HBase 1 to HBase 2. In a scenario 
where regionservers have been replaced by HBase 2 versions, but the master is 
still HBase 1, the region warmup RPC request fails. This is not particularly 
harmful but indicates it will not be useful during the transition period. 

We think it would be good to allow for warmup before move to be optionally 
disabled by a site configuration setting. In particular there have been many 
unrelated changes committed since 2015 and expectations of invariants in the 
contribution of the warmup-on-move feature have been invalidated. HBASE-26722 
may be the only case, or it might not.  This is a fairly trivial change.

  was:
We have encountered two issues with region warmup before the assignment manager 
gracefully moves a region from one regionserver to another. 

The first instance is HBASE-26722. Part of the failure chain is temporary 
double assignment like conditions where both the source and destination 
regionservers think they have exclusive rights to storefile management (as they 
should) but warmup opens a region before it is closed. While this can be 
remediated with more care to this case, it is unclear if warmup affords 
significant advantage. The motivation of the original commit in 2015 
introducing this feature was avoidance of blockcache misses once region 
ownership transfer was advertised to clients. Depending on use case and 
additional default-false schema options (like preload) this could be valuable. 
Or not.

The second instance is in place upgrade from HBase 1 to HBase 2. In a scenario 
where regionservers have been replaced by HBase 2 versions, but the master is 
still HBase 1, the region warmup RPC request fails. This is not particularly 
harmful but indicates it will not be useful during the transition period. 

We think it would be good to allow for warmup before move to be optionally 
disabled by a site configuration setting. In particular there have been many 
unrelated changes committed since 2015 and expectations of invariants in the 
contribution of the warmup-on-move feature have been invalidated. HBASE-26722 
may be the only case, or it might not.  This is a fairly trivial change.


> Allow disable of region warmup before graceful move
> ---------------------------------------------------
>
>                 Key: HBASE-26726
>                 URL: https://issues.apache.org/jira/browse/HBASE-26726
>             Project: HBase
>          Issue Type: Improvement
>          Components: master, Region Assignment
>            Reporter: Andrew Kyle Purtell
>            Assignee: Andrew Kyle Purtell
>            Priority: Minor
>             Fix For: 2.5.0, 2.6.0, 3.0.0-alpha-3
>
>
> We have encountered two issues with region warmup before the assignment 
> manager gracefully moves a region from one regionserver to another. 
> The first instance is HBASE-26722. Part of the failure chain is temporary 
> double assignment like conditions where both the source and destination 
> regionservers think they have exclusive rights to storefile management (as 
> they should) but warmup opens a region before it is closed and then both 
> regionservers take compaction related actions. While this can be remediated 
> with more care to this case, it is unclear if warmup affords significant 
> advantage. The motivation of the original commit in 2015 introducing this 
> feature was avoidance of blockcache misses once region ownership transfer was 
> advertised to clients. Depending on use case and additional default-false 
> schema options (like preload) this could be valuable. Or not.
> The second instance is in place upgrade from HBase 1 to HBase 2. In a 
> scenario where regionservers have been replaced by HBase 2 versions, but the 
> master is still HBase 1, the region warmup RPC request fails. This is not 
> particularly harmful but indicates it will not be useful during the 
> transition period. 
> We think it would be good to allow for warmup before move to be optionally 
> disabled by a site configuration setting. In particular there have been many 
> unrelated changes committed since 2015 and expectations of invariants in the 
> contribution of the warmup-on-move feature have been invalidated. HBASE-26722 
> may be the only case, or it might not.  This is a fairly trivial change.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to