Skip to content

HBASE-27250 MasterRpcService#setRegionStateInMeta does not support re… - #4664

Merged
ndimiduk merged 4 commits into
apache:masterfrom
huaxiangsun:master.HBASE-27250
Feb 21, 2023
Merged

HBASE-27250 MasterRpcService#setRegionStateInMeta does not support re…#4664
ndimiduk merged 4 commits into
apache:masterfrom
huaxiangsun:master.HBASE-27250

Conversation

@huaxiangsun

Copy link
Copy Markdown
Contributor

…plica region encodedNames or region names

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@huaxiangsun

Copy link
Copy Markdown
ContributorAuthor

force pushed update to address spotless and spotbugs issues.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@huaxiangsun

Copy link
Copy Markdown
ContributorAuthor

unit | 282m 8s | hbase-server in the patch failed.
I run the failed two test cases, TestSyncReplicationRemoveRemoteWAL,TestFuzzyRowFilterEndToEnd locally, it passed for me.

@Apache-HBase

This comment was marked as outdated.

@huaxiangsun

Copy link
Copy Markdown
ContributorAuthor

Run TestSyncReplicationRemoveRemoteWAL and TestFuzzyRowFilterEndToEnd locally, they passed.

@Apache9Apache9 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And checked the code again, when calculating encodedRegionName, we will include replicaId so I think the old implementation can support replica region, as the encodedRegionName for a secondary replica region is different from the primary replica region.

@huaxiangsun

Copy link
Copy Markdown
ContributorAuthor

Thanks for comments, checking!

@Apache9

Copy link
Copy Markdown
Contributor

Any updates here? Thanks.

@ndimiduk

Copy link
Copy Markdown
Member

I'm seeing some production issues and I think this feature would be useful. Let me try to pick it up.

@ndimiduk

Copy link
Copy Markdown
Member

Oh hey, it let me push to @huaxiangsun 's branch.

I have rebased onto master and picked up the plumbing required through AM to handle read replica regions in more places. As a nice bonus, I think HBCKServerCrashProcedure will now clean up replicas too. devtests are passing locally. I'd like to add an HBCKSCP test that explicitly covers this use-case. LEt's see what builedbot has to say.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

@Apache-HBase

This comment was marked as outdated.

Comment threadhbase-server/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java Outdated
- make several MetaTableAccessor methods more precise in their handling of replica regions
- hbck2 setRegionStateInMeta and HBCKServerCrashProcedure handle read replicas
- separate AM helper methods -- loading RegionInfo from cache vs. refreshing cache from meta
- AM helper method support loading RegionInfo from cache via either region name and encoded region
name (both caches are maintained, and under lock)
@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 24sDocker 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.
_ master Compile Tests _
+1 💚mvninstall3m 14smaster passed
+1 💚compile2m 26smaster passed
+1 💚checkstyle0m 32smaster passed
+1 💚spotless0m 38sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 20smaster passed
_ Patch Compile Tests _
+1 💚mvninstall3m 13sthe patch passed
+1 💚compile2m 24sthe patch passed
+1 💚javac2m 24sthe patch passed
+1 💚checkstyle0m 33sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck12m 44sPatch does not cause any errors with Hadoop 3.2.4 3.3.4.
+1 💚spotless0m 38spatch has no errors when running spotless:check.
+1 💚spotbugs1m 28sthe patch passed
_ Other Tests _
+1 💚asflicense0m 8sThe patch does not generate ASF License warnings.
37m 22s
SubsystemReport/Notes
DockerClientAPI=1.42 ServerAPI=1.42 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4664
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux 6ca2a45117c6 5.4.0-1094-aws #102~18.04.1-Ubuntu SMP Tue Jan 10 21:07:03 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 8ba56cc
Default JavaEclipse Adoptium-11.0.17+8
Max. process+thread count85 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/console
versionsgit=2.34.1 maven=3.8.6 spotbugs=4.7.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 25sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall4m 0smaster passed
+1 💚compile0m 46smaster passed
+1 💚shadedjars4m 43sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 26smaster passed
_ Patch Compile Tests _
+1 💚mvninstall3m 34sthe patch passed
+1 💚compile0m 45sthe patch passed
+1 💚javac0m 45sthe patch passed
+1 💚shadedjars4m 44spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23sthe patch passed
_ Other Tests _
+1 💚unit197m 5shbase-server in the patch passed.
220m 44s
SubsystemReport/Notes
DockerClientAPI=1.42 ServerAPI=1.42 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4664
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 0ef22ee2d5ad 5.4.0-1093-aws #102~18.04.2-Ubuntu SMP Wed Dec 7 00:31:59 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 8ba56cc
Default JavaEclipse Adoptium-11.0.17+8
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/testReport/
Max. process+thread count2579 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/console
versionsgit=2.34.1 maven=3.8.6
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 23sDocker mode activated.
-0 ⚠️yetus0m 3sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall3m 3smaster passed
+1 💚compile0m 36smaster passed
+1 💚shadedjars4m 35sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 21smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 45sthe patch passed
+1 💚compile0m 34sthe patch passed
+1 💚javac0m 34sthe patch passed
+1 💚shadedjars4m 35spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 21sthe patch passed
_ Other Tests _
+1 💚unit204m 27shbase-server in the patch passed.
225m 33s
SubsystemReport/Notes
DockerClientAPI=1.42 ServerAPI=1.42 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4664
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 32e2f2736bc0 5.4.0-1093-aws #102~18.04.2-Ubuntu SMP Wed Dec 7 00:31:59 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 8ba56cc
Default JavaTemurin-1.8.0_352-b08
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/testReport/
Max. process+thread count2550 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4664/6/console
versionsgit=2.34.1 maven=3.8.6
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@petersomogyipetersomogyi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change looks good to me. Thanks @ndimiduk for moving this patch forward!

@ndimiduk
ndimiduk merged commit 22dbb7a into apache:masterFeb 21, 2023
@ndimiduk

Copy link
Copy Markdown
Member

Merged to master. Thanks all for the effort!

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@huaxiangsun@Apache-HBase@Apache9@ndimiduk@petersomogyi