Skip to content

HBASE-29819 Upgrade hbase-asyncfs to use junit5 - #7615

Merged
Apache9 merged 2 commits into
apache:masterfrom
Apache9:HBASE-29819
Jan 12, 2026
Merged

HBASE-29819 Upgrade hbase-asyncfs to use junit5#7615
Apache9 merged 2 commits into
apache:masterfrom
Apache9:HBASE-29819

Conversation

@Apache9

Copy link
Copy Markdown
Contributor

No description provided.

@Apache9
Apache9 requested a review from stotyJanuary 11, 2026 15:53
@Apache9Apache9 self-assigned this Jan 11, 2026
@Apache9

Copy link
Copy Markdown
ContributorAuthor

JUnit6 has been released, we should speed up for upgrading to junit 5.

In this PR I also implemented a HBaseParameterizedTemplateProvider for simulating the parameterized test in JUnit4, which will be easier for us to migrate from junit4 to junit5.

@stoty PTAL.

Thanks.

@Apache-HBase

This comment has been minimized.

@Apache-HBase

This comment has been minimized.

@liuxiaocs7liuxiaocs7 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

+1 for the good start to migrate module by module at a time. I could help with the migration if needed.

// get parameters
Method method;
try {
method = testClass.getDeclaredMethod("parameters");

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.

nit: IMO defining an annotation for the parameter provider method would be more in line with the Junit API than requiring a hardcoded method name.

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

For now I think a hard coded method name is enough for our usage in HBase.

In JUnit5, we need to use @MethodSource("<method_name>") to reference the method, which does not have compile time check either...

We can improve this later.

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

+1 LGTM

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeLogfileComment
+0 🆗reexec0m 15sDocker mode activated.
-0 ⚠️yetus0m 4sUnprocessed 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 _
+0 🆗mvndep0m 13sMaven dependency ordering for branch
+1 💚mvninstall3m 48smaster passed
+1 💚compile0m 44smaster passed
+1 💚javadoc0m 37smaster passed
+1 💚shadedjars7m 46sbranch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗mvndep0m 19sMaven dependency ordering for patch
+1 💚mvninstall4m 34sthe patch passed
+1 💚compile1m 3sthe patch passed
+1 💚javac1m 3sthe patch passed
+1 💚javadoc0m 42sthe patch passed
+1 💚shadedjars8m 18spatch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚unit3m 10shbase-common in the patch passed.
+1 💚unit1m 57shbase-asyncfs in the patch passed.
35m 40s
SubsystemReport/Notes
DockerClientAPI=1.52 ServerAPI=1.52 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7615/2/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile
GITHUB PR#7615
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 214c4dd2d138 6.14.0-1018-aws #18~24.04.1-Ubuntu SMP Mon Nov 24 19:46:27 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 799d9e9
Default JavaEclipse Adoptium-17.0.11+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7615/2/testReport/
Max. process+thread count650 (vs. ulimit of 30000)
modulesC: hbase-common hbase-asyncfs U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7615/2/console
versionsgit=2.34.1 maven=3.9.8
Powered byApache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeLogfileComment
+0 🆗reexec1m 48sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+0 🆗codespell0m 0scodespell was not available.
+0 🆗detsecrets0m 0sdetect-secrets was not available.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
_ master Compile Tests _
+0 🆗mvndep0m 14sMaven dependency ordering for branch
+1 💚mvninstall4m 25smaster passed
+1 💚compile1m 30smaster passed
+1 💚checkstyle0m 32smaster passed
+1 💚spotbugs1m 30smaster passed
+1 💚spotless1m 15sbranch has no errors when running spotless:check.
_ Patch Compile Tests _
+0 🆗mvndep0m 17sMaven dependency ordering for patch
+1 💚mvninstall3m 58sthe patch passed
+1 💚compile1m 43sthe patch passed
+1 💚javac1m 43sthe patch passed
+1 💚blanks0m 0sThe patch has no blanks issues.
+1 💚checkstyle0m 42sthe patch passed
+1 💚xmllint0m 0sNo new issues.
+1 💚spotbugs1m 50sthe patch passed
+1 💚hadoopcheck13m 8sPatch does not cause any errors with Hadoop 3.3.6 3.4.1.
+1 💚spotless1m 2spatch has no errors when running spotless:check.
_ Other Tests _
+1 💚asflicense0m 23sThe patch does not generate ASF License warnings.
44m 3s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7615/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#7615
Optional Testsdupname asflicense javac codespell detsecrets xmllint hadoopcheck spotless compile spotbugs checkstyle hbaseanti
unameLinux 63bc07e70980 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 toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 799d9e9
Default JavaEclipse Adoptium-17.0.11+9
Max. process+thread count82 (vs. ulimit of 30000)
modulesC: hbase-common hbase-asyncfs U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7615/2/console
versionsgit=2.34.1 maven=3.9.8 spotbugs=4.7.3 xmllint=20913
Powered byApache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

@Apache9
Apache9 merged commit 119c0ce into apache:masterJan 12, 2026
1 check passed
Apache9 added a commit that referenced this pull request Jan 12, 2026
Signed-off-by: Istvan Toth <stoty@apache.org>
Reviewed-by: Liu Xiao <liuxiao2103@qq.com>
(cherry picked from commit 119c0ce)
Apache9 added a commit that referenced this pull request Jan 12, 2026
Signed-off-by: Istvan Toth <stoty@apache.org>
Reviewed-by: Liu Xiao <liuxiao2103@qq.com>
(cherry picked from commit 119c0ce)
Apache9 added a commit that referenced this pull request Jan 12, 2026
Signed-off-by: Istvan Toth <stoty@apache.org>
Reviewed-by: Liu Xiao <liuxiao2103@qq.com>
(cherry picked from commit 119c0ce)
Apache9 added a commit that referenced this pull request Jan 12, 2026
Signed-off-by: Istvan Toth <stoty@apache.org>
Reviewed-by: Liu Xiao <liuxiao2103@qq.com>
(cherry picked from commit 119c0ce)
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.

4 participants

@Apache9@Apache-HBase@stoty@liuxiaocs7