Skip to content

HBASE-26726 Allow disable of region warmup before graceful move - #4087

Merged
apurtell merged 1 commit into
apache:branch-1from
apurtell:HBASE-26726-branch-1
Feb 1, 2022
Merged

HBASE-26726 Allow disable of region warmup before graceful move#4087
apurtell merged 1 commit into
apache:branch-1from
apurtell:HBASE-26726-branch-1

Conversation

@apurtell

Copy link
Copy Markdown
Contributor

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.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec10m 12sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
-0 ⚠️test4tests0m 0sThe patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ branch-1 Compile Tests _
+1 💚mvninstall10m 31sbranch-1 passed
+1 💚compile0m 51sbranch-1 passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚compile0m 55sbranch-1 passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚checkstyle2m 2sbranch-1 passed
+1 💚shadedjars3m 42sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 49sbranch-1 passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javadoc0m 44sbranch-1 passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+0 🆗spotbugs3m 31sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs3m 28sbranch-1 passed
_ Patch Compile Tests _
+1 💚mvninstall2m 31sthe patch passed
+1 💚compile0m 51sthe patch passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javac0m 51sthe patch passed
+1 💚compile0m 56sthe patch passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚javac0m 56sthe patch passed
+1 💚checkstyle1m 46sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚shadedjars3m 26spatch has no errors when building our shaded downstream artifacts.
+1 💚hadoopcheck5m 42sPatch does not cause any errors with Hadoop 2.8.5 2.9.2.
+1 💚javadoc0m 33sthe patch passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javadoc0m 44sthe patch passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚findbugs3m 22sthe patch passed
_ Other Tests _
-1 ❌unit176m 13shbase-server in the patch failed.
+1 💚asflicense0m 34sThe patch does not generate ASF License warnings.
234m 0s
ReasonTests
Failed junit testshadoop.hbase.client.TestAdmin1
hadoop.hbase.mapreduce.TestLoadIncrementalHFilesUseSecurityEndPoint
hadoop.hbase.master.TestMasterOperationsForRegionReplicas
hadoop.hbase.mapreduce.TestSecureLoadIncrementalHFiles
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/1/artifact/out/Dockerfile
GITHUB PR#4087
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux 846572b84453 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-agent/workspace/Base-PreCommit-GitHub-PR_PR-4087/out/precommit/personality/provided.sh
git revisionbranch-1 / a2406f3
Default JavaAzul Systems, Inc.-1.7.0_272-b10
Multi-JDK versions/usr/lib/jvm/zulu-8-amd64:Azul Systems, Inc.-1.8.0_262-b19 /usr/lib/jvm/zulu-7-amd64:Azul Systems, Inc.-1.7.0_272-b10
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/1/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/1/testReport/
Max. process+thread count4939 (vs. ulimit of 10000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/1/console
versionsgit=2.17.1 maven=3.6.0 findbugs=3.0.1
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@virajjasanivirajjasani added the backport This PR is a back port of some issue or issues already committed to master label Feb 1, 2022
@virajjasani

Copy link
Copy Markdown
Contributor

Re-triggered the QA as test failures should not be ideally relevant to this change.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 46sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
+1 💚@author0m 0sThe patch does not contain any @author tags.
-0 ⚠️test4tests0m 0sThe patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ branch-1 Compile Tests _
+1 💚mvninstall24m 35sbranch-1 passed
+1 💚compile0m 45sbranch-1 passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚compile0m 49sbranch-1 passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚checkstyle1m 44sbranch-1 passed
+1 💚shadedjars3m 15sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 50sbranch-1 passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javadoc0m 40sbranch-1 passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+0 🆗spotbugs3m 7sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs3m 3sbranch-1 passed
_ Patch Compile Tests _
+1 💚mvninstall2m 12sthe patch passed
+1 💚compile0m 44sthe patch passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javac0m 44sthe patch passed
+1 💚compile0m 47sthe patch passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚javac0m 47sthe patch passed
+1 💚checkstyle1m 32sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚shadedjars3m 9spatch has no errors when building our shaded downstream artifacts.
+1 💚hadoopcheck5m 15sPatch does not cause any errors with Hadoop 2.8.5 2.9.2.
+1 💚javadoc0m 32sthe patch passed with JDK Azul Systems, Inc.-1.8.0_262-b19
+1 💚javadoc0m 43sthe patch passed with JDK Azul Systems, Inc.-1.7.0_272-b10
+1 💚findbugs2m 59sthe patch passed
_ Other Tests _
-1 ❌unit133m 47shbase-server in the patch failed.
+1 💚asflicense0m 42sThe patch does not generate ASF License warnings.
192m 38s
ReasonTests
Failed junit testshadoop.hbase.replication.TestReplicationSource
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/2/artifact/out/Dockerfile
GITHUB PR#4087
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs shadedjars hadoopcheck hbaseanti checkstyle compile
unameLinux b42564ddc209 4.15.0-156-generic #163-Ubuntu SMP Thu Aug 19 23:31:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personality/home/jenkins/jenkins-home/workspace/Base-PreCommit-GitHub-PR_PR-4087/out/precommit/personality/provided.sh
git revisionbranch-1 / a2406f3
Default JavaAzul Systems, Inc.-1.7.0_272-b10
Multi-JDK versions/usr/lib/jvm/zulu-8-amd64:Azul Systems, Inc.-1.8.0_262-b19 /usr/lib/jvm/zulu-7-amd64:Azul Systems, Inc.-1.7.0_272-b10
unithttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/2/artifact/out/patch-unit-hbase-server.txt
Test Resultshttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/2/testReport/
Max. process+thread count4403 (vs. ulimit of 10000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-4087/2/console
versionsgit=2.17.1 maven=3.6.0 findbugs=3.0.1
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@apurtell

Copy link
Copy Markdown
ContributorAuthor

Thanks.
Agreed, the test failures are not relevant. The default preserves existing behavior, too.

@apurtell
apurtell merged commit bd8a332 into apache:branch-1Feb 1, 2022
@apurtell
apurtell deleted the HBASE-26726-branch-1 branch February 1, 2022 23:38
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backportThis PR is a back port of some issue or issues already committed to master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@apurtell@Apache-HBase@virajjasani