Skip to content

Conversation

@kgeisz
Copy link
Contributor

@kgeisz kgeisz commented Nov 20, 2025

Original Jira: https://issues.apache.org/jira/browse/HBASE-25334
Backport Jira task: https://issues.apache.org/jira/browse/HBASE-29724

This pull request is a cherry-pick from PR #2728.

Note
In this branch, the TestRSGroupsFallback.java file is currently part of the hbase-rsgroup module. However, in the master branch, this file is part of hbase-server.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@taklwu taklwu requested a review from Copilot November 20, 2025 17:33
Copilot finished reviewing on behalf of taklwu November 20, 2025 17:36
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR backports HBASE-25334 from the master branch to fix a flaky test TestRSGroupsFallback.testFallback in branch-2 and branch-2.6. The fix addresses race conditions and improves test reliability by refining procedure state checking and removing unnecessary explicit waits.

  • Enhances ServerManager.areDeadServersInProgress() to only count unfinished ServerCrashProcedures
  • Improves testCrashProcedureReplay to properly test procedure replay after simulated master crash
  • Simplifies TestRSGroupsFallback.testFallback by removing flaky wait logic for region server registration

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java Adds !p.isFinished() check to areDeadServersInProgress() to filter out completed procedures
hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestDeadServer.java Enhances procedure replay test with proper stop/restart sequence and completion verification
hbase-rsgroup/src/test/java/org/apache/hadoop/hbase/rsgroup/TestRSGroupsFallback.java Removes explicit wait for default group server recognition and improves code clarity

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Apache-HBase

This comment has been minimized.

Copy link
Contributor

@taklwu taklwu left a comment

Choose a reason for hiding this comment

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

+1 HBASE-25334 has previous ported partially, and this time we have this backport and #7463 to completely patch with using SCP as the source of dead in progress list

TestReplicationSource.testAbortTrueOnError should not be related to this change, let me retrigger another run to see if this is still failing

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 54s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+0 🆗 codespell 0m 0s codespell was not available.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 hbaseanti 0m 0s Patch does not have any anti-patterns.
_ branch-2 Compile Tests _
+0 🆗 mvndep 0m 18s Maven dependency ordering for branch
+1 💚 mvninstall 4m 19s branch-2 passed
+1 💚 compile 4m 6s branch-2 passed
+1 💚 checkstyle 0m 56s branch-2 passed
+1 💚 spotbugs 2m 35s branch-2 passed
+1 💚 spotless 1m 2s branch has no errors when running spotless:check.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 21s Maven dependency ordering for patch
+1 💚 mvninstall 3m 59s the patch passed
+1 💚 compile 4m 4s the patch passed
+1 💚 javac 4m 4s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 checkstyle 0m 59s the patch passed
+1 💚 spotbugs 3m 0s the patch passed
+1 💚 hadoopcheck 19m 15s Patch does not cause any errors with Hadoop 2.10.2 or 3.3.6 3.4.1.
+1 💚 spotless 0m 54s patch has no errors when running spotless:check.
_ Other Tests _
+1 💚 asflicense 0m 23s The patch does not generate ASF License warnings.
49m 20s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #7472
Optional Tests dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless
uname Linux a1acbc14d759 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision branch-2 / 918c546
Default Java Eclipse Adoptium-11.0.23+9
Max. process+thread count 77 (vs. ulimit of 30000)
modules C: hbase-server hbase-rsgroup U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/console
versions git=2.34.1 maven=3.9.8 spotbugs=4.7.3
Powered by Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 44s Docker mode activated.
-0 ⚠️ yetus 0m 5s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck
_ Prechecks _
_ branch-2 Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for branch
+1 💚 mvninstall 2m 55s branch-2 passed
+1 💚 compile 1m 1s branch-2 passed
+1 💚 javadoc 0m 41s branch-2 passed
+1 💚 shadedjars 5m 32s branch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 14s Maven dependency ordering for patch
+1 💚 mvninstall 2m 28s the patch passed
+1 💚 compile 0m 59s the patch passed
+1 💚 javac 0m 59s the patch passed
+1 💚 javadoc 0m 40s the patch passed
+1 💚 shadedjars 5m 29s patch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚 unit 212m 15s hbase-server in the patch passed.
+1 💚 unit 4m 15s hbase-rsgroup in the patch passed.
242m 30s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile
GITHUB PR #7472
Optional Tests javac javadoc unit compile shadedjars
uname Linux ebd9740d5866 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision branch-2 / 918c546
Default Java Temurin-1.8.0_412-b08
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/testReport/
Max. process+thread count 3123 (vs. ulimit of 30000)
modules C: hbase-server hbase-rsgroup U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/console
versions git=2.34.1 maven=3.9.8
Powered by Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 47s Docker mode activated.
-0 ⚠️ yetus 0m 6s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck
_ Prechecks _
_ branch-2 Compile Tests _
+0 🆗 mvndep 0m 16s Maven dependency ordering for branch
+1 💚 mvninstall 3m 45s branch-2 passed
+1 💚 compile 1m 23s branch-2 passed
+1 💚 javadoc 0m 44s branch-2 passed
+1 💚 shadedjars 6m 38s branch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 19s Maven dependency ordering for patch
+1 💚 mvninstall 3m 20s the patch passed
+1 💚 compile 1m 23s the patch passed
+1 💚 javac 1m 23s the patch passed
+1 💚 javadoc 0m 43s the patch passed
+1 💚 shadedjars 6m 39s patch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚 unit 211m 55s hbase-server in the patch passed.
+1 💚 unit 4m 11s hbase-rsgroup in the patch passed.
247m 1s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile
GITHUB PR #7472
Optional Tests javac javadoc unit compile shadedjars
uname Linux 8650e42fb0da 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision branch-2 / 918c546
Default Java Eclipse Adoptium-17.0.11+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/testReport/
Max. process+thread count 3308 (vs. ulimit of 30000)
modules C: hbase-server hbase-rsgroup U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/console
versions git=2.34.1 maven=3.9.8
Powered by Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 57s Docker mode activated.
-0 ⚠️ yetus 0m 7s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck
_ Prechecks _
_ branch-2 Compile Tests _
+0 🆗 mvndep 0m 18s Maven dependency ordering for branch
+1 💚 mvninstall 4m 13s branch-2 passed
+1 💚 compile 1m 45s branch-2 passed
+1 💚 javadoc 0m 58s branch-2 passed
+1 💚 shadedjars 8m 21s branch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 24s Maven dependency ordering for patch
+1 💚 mvninstall 4m 4s the patch passed
+1 💚 compile 1m 46s the patch passed
+1 💚 javac 1m 46s the patch passed
+1 💚 javadoc 0m 54s the patch passed
+1 💚 shadedjars 8m 12s patch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚 unit 263m 44s hbase-server in the patch passed.
+1 💚 unit 5m 2s hbase-rsgroup in the patch passed.
305m 57s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR #7472
Optional Tests javac javadoc unit compile shadedjars
uname Linux 2de0f261a34b 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/hbase-personality.sh
git revision branch-2 / 918c546
Default Java Eclipse Adoptium-11.0.23+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/testReport/
Max. process+thread count 3170 (vs. ulimit of 30000)
modules C: hbase-server hbase-rsgroup U: .
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7472/3/console
versions git=2.34.1 maven=3.9.8
Powered by Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@taklwu taklwu merged commit 6fb6269 into apache:branch-2 Nov 21, 2025
6 of 7 checks passed
taklwu pushed a commit to taklwu/hbase that referenced this pull request Nov 21, 2025
… is flaky" into branch-2 and branch-2.6 (apache#7472)

Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
@taklwu
Copy link
Contributor

taklwu commented Nov 24, 2025

adding one more note as requested in (#7476)

The change introduced in HBASE-25334 (commit 32c4432 on GitHub) has diverged between the master and branch-2 branches. This is a following up changes after HBASE-29720 and have the complete functional changes of HBASE-25334 that uses SCP as the source of dead servers in progress.

taklwu pushed a commit to taklwu/hbase that referenced this pull request Nov 24, 2025
…allback.testFallback is flaky" into branch-2 and branch-2.6 (apache#7472) apache#7476

 The change in HBASE-25334 (introduced by commit 32c4432) has diverged between the master and branch-2 branches. This is a following up changes after HBASE-29720 and have the complete functional changes of HBASE-25334 that uses SCP as the source of dead servers in progress.

Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
taklwu added a commit that referenced this pull request Nov 24, 2025
…allback.testFallback is flaky" into branch-2 and branch-2.6 (#7472) #7476 (#7476)

The change in HBASE-25334 (introduced by commit 32c4432 in branch-2 and
branch-2.6) has diverged between the master (#2728) and branch-2 branches. 
This is a following up changes after HBASE-29720 and have the complete functional
changes of HBASE-25334 that uses SCP as the source of dead servers in progress.

Signed-off-by: Istvan Toth <stoty@apache.org>
Co-authored-by: Kevin Geiszler <kevin.j.geiszler@gmail.com>
Sign up for free to 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.

4 participants