Skip to content

HBASE-29359 VerifyReplication needs to join on its verification tasks #7041

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

ndimiduk
Copy link
Member

No description provided.

@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.

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 2, 2025

Hopefully this is more aligned with the original author's intention. Let me see try it out...

FYI @hgromer .

@@ -156,7 +162,96 @@ public enum Counters {
private int sleepMsBeforeReCompare;
private String delimiter = "";
private boolean verbose = false;
private int batch = -1;

private ResultScanner initializeMapperOnFirstValue(Context context, Result value)
Copy link
Member Author

Choose a reason for hiding this comment

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

I moved the whole if-block up into this method.

@@ -340,20 +405,6 @@ protected void cleanup(Context context) {
throw new RuntimeException("Failed to await executor termination in cleanup", e);
}
}
if (replicatedScanner != null) {
Copy link
Member Author

Choose a reason for hiding this comment

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

Not sure why we closed down the threadpool while there was still work to do. Re-ordered those steps so that the final counter work can also run in parallel.

@@ -131,6 +134,9 @@ public class VerifyReplication extends Configured implements Tool {
*/
public static class Verifier extends TableMapper<ImmutableBytesWritable, Put> {

private ThreadPoolExecutor reCompareExecutor = null;
Copy link
Member Author

Choose a reason for hiding this comment

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

This Executor and its helper methods are only used from within the Map task, so moved them in here. It's possible that some MR environment will instantiate multiple map task instances per JVM, which would result in all tasks sharing the same pool, but I don't think that's how MRv2 works.

@Apache-HBase
Copy link

🎊 +1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 29s 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.
_ master Compile Tests _
+1 💚 mvninstall 4m 14s master passed
+1 💚 compile 1m 0s master passed
+1 💚 checkstyle 0m 17s master passed
+1 💚 spotbugs 0m 45s master passed
+1 💚 spotless 1m 3s branch has no errors when running spotless:check.
_ Patch Compile Tests _
+1 💚 mvninstall 4m 3s the patch passed
+1 💚 compile 0m 45s the patch passed
+1 💚 javac 0m 45s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
-0 ⚠️ checkstyle 0m 13s /results-checkstyle-hbase-mapreduce.txt hbase-mapreduce: The patch generated 1 new + 1 unchanged - 0 fixed = 2 total (was 1)
+1 💚 spotbugs 0m 44s the patch passed
+1 💚 hadoopcheck 17m 26s Patch does not cause any errors with Hadoop 3.3.6 3.4.0.
+1 💚 spotless 0m 55s patch has no errors when running spotless:check.
_ Other Tests _
+1 💚 asflicense 0m 13s The patch does not generate ASF License warnings.
43m 1s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7041/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR #7041
Optional Tests dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless
uname Linux 356c84e45020 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 master / d4948fe
Default Java Eclipse Adoptium-17.0.11+9
Max. process+thread count 83 (vs. ulimit of 30000)
modules C: hbase-mapreduce U: hbase-mapreduce
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7041/4/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 33s Docker mode activated.
-0 ⚠️ yetus 0m 2s Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚 mvninstall 3m 21s master passed
+1 💚 compile 0m 20s master passed
+1 💚 javadoc 0m 16s master passed
+1 💚 shadedjars 6m 11s branch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+1 💚 mvninstall 3m 7s the patch passed
+1 💚 compile 0m 20s the patch passed
+1 💚 javac 0m 20s the patch passed
+1 💚 javadoc 0m 14s the patch passed
+1 💚 shadedjars 6m 6s patch has no errors when building our shaded downstream artifacts.
_ Other Tests _
-1 ❌ unit 29m 21s /patch-unit-hbase-mapreduce.txt hbase-mapreduce in the patch failed.
50m 53s
Subsystem Report/Notes
Docker ClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7041/4/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile
GITHUB PR #7041
Optional Tests javac javadoc unit compile shadedjars
uname Linux acc5c24a6706 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 master / d4948fe
Default Java Eclipse Adoptium-17.0.11+9
Test Results https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7041/4/testReport/
Max. process+thread count 4357 (vs. ulimit of 30000)
modules C: hbase-mapreduce U: hbase-mapreduce
Console output https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7041/4/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.

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 3, 2025

Test failures look related.

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 3, 2025

Okay these are broken on master :(

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 4, 2025

I've bisected master locally several times and it always comes back to #7048 / ae5400e as the aggravating commit.

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 4, 2025

FYI @charlesconnell . I didn't make time to investigate this further today, so pinging you now. I do intend to take a look myself, but maybe not until tomorrow at this point.

@ndimiduk
Copy link
Member Author

ndimiduk commented Jun 4, 2025

The test command I'm using locally is

mvn clean package -T4 -am -pl hbase-mapreduce -Dtest=TestVerifyReplicationAdjunct

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.

2 participants