Skip to content

HBASE-26192 Master UI hbck should provide a JSON formatted output option - #4470

Closed
apurtell wants to merge 2 commits into
apache:masterfrom
apurtell:HBASE-26192
Closed

HBASE-26192 Master UI hbck should provide a JSON formatted output option#4470
apurtell wants to merge 2 commits into
apache:masterfrom
apurtell:HBASE-26192

Conversation

@apurtell

@apurtellapurtell commented May 27, 2022

Copy link
Copy Markdown
Contributor

This is a trivial recast of hbck.jsp as a servlet. It takes the same actions, using the same parameters, and instead of formatting for HTML constructs a simple map that is formatted as JSON via GSON. Nouns, inclusion, and ordering are the same as that of the jsp page.

It runs as a read-only unprivileged servlet on the master at /hbck. Hbck JSP pretty printer remains at /hbck.jsp.

@apurtell

Copy link
Copy Markdown
ContributorAuthor

Needs some basic tests; up next.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 40sDocker 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 41smaster passed
+1 💚compile2m 20smaster passed
+1 💚checkstyle0m 30smaster passed
+1 💚spotless0m 48sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 17smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 10sthe patch passed
+1 💚compile2m 14sthe patch passed
+1 💚javac2m 14sthe patch passed
+1 💚checkstyle0m 31sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck14m 12sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotless0m 59spatch has no errors when running spotless:check.
+1 💚spotbugs2m 14sthe patch passed
_ Other Tests _
+1 💚asflicense0m 23sThe patch does not generate ASF License warnings.
37m 39s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux 1f2762eac2cb 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-1.8.0_282-b08
Max. process+thread count64 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
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 🆗reexec1m 11sDocker mode activated.
-0 ⚠️yetus0m 2sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall2m 25smaster passed
+1 💚compile0m 38smaster passed
+1 💚shadedjars3m 40sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 26smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 21sthe patch passed
+1 💚compile0m 40sthe patch passed
+1 💚javac0m 40sthe patch passed
+1 💚shadedjars3m 40spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 24sthe patch passed
_ Other Tests _
+1 💚unit203m 20shbase-server in the patch passed.
220m 23s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 50c5aae1d3aa 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-1.8.0_282-b08
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/testReport/
Max. process+thread count2812 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 36sDocker 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 💚mvninstall5m 13smaster passed
+1 💚compile1m 9smaster passed
+1 💚shadedjars5m 1sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 40smaster passed
_ Patch Compile Tests _
+1 💚mvninstall3m 11sthe patch passed
+1 💚compile0m 52sthe patch passed
+1 💚javac0m 52sthe patch passed
+1 💚shadedjars5m 10spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 36sthe patch passed
_ Other Tests _
-1 ❌unit227m 47shbase-server in the patch failed.
253m 13s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 40124f752dda 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-11.0.10+9
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/testReport/
Max. process+thread count2352 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/1/console
versionsgit=2.17.1 maven=3.6.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 39sDocker 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 💚mvninstall2m 5smaster passed
+1 💚compile2m 11smaster passed
+1 💚checkstyle0m 28smaster passed
+1 💚spotless0m 39sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 13smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 6sthe patch passed
+1 💚compile2m 11sthe patch passed
+1 💚javac2m 11sthe patch passed
+1 💚checkstyle0m 28sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck11m 52sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotless0m 39spatch has no errors when running spotless:check.
+1 💚spotbugs1m 21sthe patch passed
_ Other Tests _
+1 💚asflicense0m 7sThe patch does not generate ASF License warnings.
31m 17s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux ae0e57e39704 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-1.8.0_282-b08
Max. process+thread count65 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
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 38sDocker 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 36smaster passed
+1 💚compile0m 41smaster passed
+1 💚shadedjars3m 48sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 25smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 28sthe patch passed
+1 💚compile0m 40sthe patch passed
+1 💚javac0m 40sthe patch passed
+1 💚shadedjars3m 48spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23sthe patch passed
_ Other Tests _
+1 💚unit188m 33shbase-server in the patch passed.
207m 23s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 3a10c278f012 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/testReport/
Max. process+thread count2476 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 11sDocker mode activated.
-0 ⚠️yetus0m 2sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall2m 11smaster passed
+1 💚compile0m 39smaster passed
+1 💚shadedjars3m 40sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 10sthe patch passed
+1 💚compile0m 39sthe patch passed
+1 💚javac0m 39sthe patch passed
+1 💚shadedjars3m 39spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23sthe patch passed
_ Other Tests _
+1 💚unit205m 4shbase-server in the patch passed.
221m 34s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 57780c926bfd 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / fdf054d
Default JavaAdoptOpenJDK-1.8.0_282-b08
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/testReport/
Max. process+thread count2693 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/2/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@apurtell
apurtell marked this pull request as draft May 27, 2022 21:35
@apurtell

Copy link
Copy Markdown
ContributorAuthor

Rebase. Test implementation in progress.

@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 39sDocker 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 💚mvninstall2m 6smaster passed
+1 💚compile2m 9smaster passed
+1 💚checkstyle0m 27smaster passed
+1 💚spotless0m 38sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 11smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 12sthe patch passed
+1 💚compile2m 8sthe patch passed
+1 💚javac2m 8sthe patch passed
+1 💚checkstyle0m 27sthe patch passed
-0 ⚠️whitespace0m 0sThe patch has 1 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply
+1 💚hadoopcheck11m 35sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
-1 ❌spotless0m 32spatch has 42 errors when running spotless:check, run spotless:apply to fix.
+1 💚spotbugs1m 18sthe patch passed
_ Other Tests _
+1 💚asflicense0m 7sThe patch does not generate ASF License warnings.
30m 40s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux ff4a960fa347 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / cf0ed2e
Default JavaAdoptOpenJDK-1.8.0_282-b08
whitespacehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-general-check/output/whitespace-eol.txt
spotlesshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-general-check/output/patch-spotless.txt
Max. process+thread count60 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
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 🆗reexec1m 12sDocker mode activated.
-0 ⚠️yetus0m 2sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall2m 9smaster passed
+1 💚compile0m 39smaster passed
+1 💚shadedjars3m 45sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 24smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 15sthe patch passed
+1 💚compile0m 39sthe patch passed
+1 💚javac0m 39sthe patch passed
+1 💚shadedjars3m 38spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 24sthe patch passed
_ Other Tests _
-1 ❌unit204m 8shbase-server in the patch failed.
220m 53s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 56894da4fbcf 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / cf0ed2e
Default JavaAdoptOpenJDK-1.8.0_282-b08
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/testReport/
Max. process+thread count2887 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 36sDocker mode activated.
-0 ⚠️yetus0m 2sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall4m 1smaster passed
+1 💚compile1m 24smaster passed
+1 💚shadedjars5m 39sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 36smaster passed
_ Patch Compile Tests _
+1 💚mvninstall3m 21sthe patch passed
+1 💚compile0m 58sthe patch passed
+1 💚javac0m 58sthe patch passed
+1 💚shadedjars5m 15spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 36sthe patch passed
_ Other Tests _
-1 ❌unit254m 16shbase-server in the patch failed.
279m 59s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 2d3aee0d2697 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / cf0ed2e
Default JavaAdoptOpenJDK-11.0.10+9
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/testReport/
Max. process+thread count2366 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/3/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.


private static final long serialVersionUID = 1L;
private static final Logger LOG = LoggerFactory.getLogger(MasterHbckServlet.class);
private static final Gson GSON = new Gson();

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.

You almost certainly don't want to use the Gson object defaults; I would expect some minor configuration. See also hbase-server/src/main/java/.../hbase/master/http/gson/GsonFactory.java

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.

GsonUtil would also work but yes GsonFactory#buildGson should be quite enough.

@apurtell
apurtell marked this pull request as ready for review May 31, 2022 22:08
@apurtell
apurtell requested a review from ndimidukMay 31, 2022 22:08
@apurtell

Copy link
Copy Markdown
ContributorAuthor

Rebased, with test

@apurtell

Copy link
Copy Markdown
ContributorAuthor

Clarify something in test and apply spotless.

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 38sDocker 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 💚mvninstall2m 5smaster passed
+1 💚compile2m 10smaster passed
+1 💚checkstyle0m 29smaster passed
+1 💚spotless0m 39sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 12smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 9sthe patch passed
+1 💚compile2m 11sthe patch passed
+1 💚javac2m 11sthe patch passed
+1 💚checkstyle0m 28sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck11m 54sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotless0m 39spatch has no errors when running spotless:check.
+1 💚spotbugs1m 25sthe patch passed
_ Other Tests _
+1 💚asflicense0m 7sThe patch does not generate ASF License warnings.
31m 21s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux 4d6a18ea1de4 5.4.0-1025-aws #25~18.04.1-Ubuntu SMP Fri Sep 11 12:03:04 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 540fe8b
Default JavaAdoptOpenJDK-1.8.0_282-b08
Max. process+thread count64 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@apurtell

Copy link
Copy Markdown
ContributorAuthor

Example - healthy cluster:

Screen Shot 2022-05-31 at 5 18 15 PM

@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 31sDocker 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 💚mvninstall2m 45smaster passed
+1 💚compile0m 41smaster passed
+1 💚shadedjars3m 48sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 26sthe patch passed
+1 💚compile0m 41sthe patch passed
+1 💚javac0m 41sthe patch passed
+1 💚shadedjars3m 45spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23sthe patch passed
_ Other Tests _
+1 💚unit186m 30shbase-server in the patch passed.
204m 53s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 78495955c823 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 540fe8b
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/testReport/
Max. process+thread count3247 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 14sDocker 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 💚mvninstall2m 29smaster passed
+1 💚compile0m 40smaster passed
+1 💚shadedjars3m 39sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 26smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 12sthe patch passed
+1 💚compile0m 38sthe patch passed
+1 💚javac0m 38sthe patch passed
+1 💚shadedjars3m 39spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23sthe patch passed
_ Other Tests _
+1 💚unit202m 44shbase-server in the patch passed.
219m 51s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 20206f0c024b 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 540fe8b
Default JavaAdoptOpenJDK-1.8.0_282-b08
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/testReport/
Max. process+thread count2880 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/4/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@apurtell

apurtell commented Jun 1, 2022

Copy link
Copy Markdown
ContributorAuthor

@ndimiduk Do you have any concerns with the current state of this? I think if someone wants to use this servlet to check status with a json aware tool it will provide all the necessary information, but we don't have an API to recover the original Java types from the GSON serialization. OTOH I do not think that is required.

@virajjasani WDYT?

assertEquals(1, orphanRegionsOnFS.size());
assertNull(orphanRegionsOnFS.get(FAKE_HRI.getEncodedName()));
assertNotNull(orphanRegionsOnFS.get(FAKE_HRI_3.getEncodedName()));
List holes = (List) result.get(MasterHbckServlet.HOLES);

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.

Given that we are just comparing null vs non-null and size of the list, this raw use of List is fine.

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

I think this is useful information to expose. I tentatively agree that exposing a report like this deserves its own endpoint, rather than jamming it into JMX.

On the implementation, I'm disappointed to see programming against the raw Servlet API. I did all the work to get Jersey setup and working properly, I hoped that it would be the path forward for new web service work. So I'm -0 on more hand-rolled Servlets.

As for the implementation itself, I think you could a do a little more around error handling. I have a question about using a 503 for an expected server state. In particular, I just got bit by a web UI not handling backup master properly, so that scenario is on my mind during this review.

private static final Gson GSON = GsonFactory.buildGson();

@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)

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.

Why use the raw Servlet API when we have Jersey? Instead of building a response by hand, you could instantiate a POJO and return it, be done.

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.

The other servlets are implemented using the Servlet API and I used them as template.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

I agree to Nick’s comment on the REST Endpoint returning JSON backed my Model which is a standard way of implementing REST APIs.

protected void configureInfoServer(InfoServer infoServer) {
infoServer.addUnprivilegedServlet("master-status", "/master-status", MasterStatusServlet.class);
infoServer.addUnprivilegedServlet("api_v1", "/api/v1/*", buildApiV1Servlet());
infoServer.addUnprivilegedServlet("hbck", "/hbck", MasterHbckServlet.class);

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.

Why add a new endpoint instead of having the existing /hbck.jsp honor an "application/json" header and render its response there? Probably a bunch of that jsp's POJOs can be reused...

@apurtellapurtellJun 6, 2022

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.

I did not and still do not know how to make a JSP page honor different content-encodings. JSP is not the tool I would like to implement this with. If this is the preferred implementation that's fine but I would not want to pursue it.

final HbckChore hbckChore = master.getHbckChore();
if (hbckChore == null || hbckChore.isDisabled()) {
LOG.warn("Hbck chore is disabled");
sendError(response, HttpServletResponse.SC_SERVICE_UNAVAILABLE, "Hbck chore is disabled");

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.

Is this really a 503? The server is fine. I'm no HTTP status code expert, but I'd say this is more like a 204 SC_NO_CONTENT or a 404 SC_NOT_FOUND meaning "hbck resource is not available".

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.

If the HBCK chore is not available the service is not available, was my thinking. However I can see 204 being quite appropriate.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

404 is usually for resource not found right - if hbck is the resource which is disabled, it means the requested resource is not found.
204 would mean that the resource is found but didn't have content to respond with.
May 404 is right? Given the message contains details that chore is disabled?

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
final HMaster master = (HMaster) getServletContext().getAttribute(HMaster.MASTER);
if (!master.isInitialized()) {

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.

!isInitialized() could mean that this master instance is a backup master, in which case the response should be a redirect to this endpoint on the active master.

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.

Ah, this is not something I thought about. Seems reasonable to handle it with a redirect.

LOG.warn("Failed generating a new catalogjanitor report; using cache", se);
}
}
Map<String, Object> result = new HashMap<>();

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.

If you define a POJO for the response object, we can have some hope of tracing API compatibility in the future using our existing compatibility report.

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.

Got it, this is a good reason.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

With POJO, we can achieve something like what OData does to even query for a sub document as mentioned here. I am not sure if there is a right equivalent support already available in HBase, else we can skip the OData part but the POJO adds value.

}
Map<String, Object> result = new HashMap<>();
result.put(START_TIMESTAMP, hbckChore.getCheckingStartTimestamp());
result.put(END_TIMESTAMP, hbckChore.getCheckingEndTimestamp());

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.

Our HBCK chore should expose a report so that a reader can get a static view... or a read-write lock so that a reader can block a writer from clobbering its view.

}
final CatalogJanitor janitor = master.getCatalogJanitor();
if (janitor != null) {
final Report report = janitor.getLastReport();

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.

CatalogueJanitor exposes the report concept. Brilliant!

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.

Yes, and unfortunately the result is a mix of CatalogJanitor's nicely structured Report and HbckChore's other return types.

Unifying these things is out of scope, though. Or, we can make it a precondition, but I won't pursue it at this time.

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.

Down review I accepted your proposal to implement this with Jersey, so a clean unification of these two data sources can be done when working up the model (POJO) of the report encoding to return from the request handler.


@SuppressWarnings({ "unchecked", "rawtypes" })
@Test
public void testHbckServletWithMocks() throws Exception {

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.

No testing of error states?

doReturn(hbckChore).when(master).getHbckChore();
MasterRpcServices services = mock(MasterRpcServices.class);
doReturn(services).when(master).getRpcServices();
doReturn(services).when(master).getMasterRpcServices();

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.

Why do all this mockery? At this point, it's it simpler to stand up a mini-cluster and manufacture the state you need? It looks like TestMetaFixer has some utility code for manufacturing faulty states.

@apurtellapurtellJun 6, 2022

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.

Because when I wrote this test this was the way I understood it could be implemented and I don't think too much is mocked here, just what is needed to produce a report that has exactly what I want to check for later.

ndimiduk added a commit to ndimiduk/hbase that referenced this pull request Jun 7, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
@ndimiduk

Copy link
Copy Markdown
Member

I posted up #4498, which will give you a report to work from.

@apurtell

apurtell commented Jun 7, 2022

Copy link
Copy Markdown
ContributorAuthor

I posted up #4498, which will give you a report to work from.

I reviewed #4498 and left an approval, it is a nice refactor.

@apurtell
apurtellforce-pushed the HBASE-26192 branch 2 times, most recently from cb11a74 to f8892b0CompareJune 8, 2022 01:32
@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec5m 52sDocker 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 💚mvninstall2m 51smaster passed
+1 💚compile2m 14smaster passed
+1 💚checkstyle0m 31smaster passed
+1 💚spotless0m 41sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 20smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 38sthe patch passed
+1 💚compile2m 14sthe patch passed
+1 💚javac2m 14sthe patch passed
+1 💚checkstyle0m 31sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚hadoopcheck13m 14sPatch does not cause any errors with Hadoop 3.1.2 3.2.2 3.3.1.
+1 💚spotless0m 40spatch has no errors when running spotless:check.
+1 💚spotbugs1m 22sthe patch passed
_ Other Tests _
+1 💚asflicense0m 11sThe patch does not generate ASF License warnings.
40m 3s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/5/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux adb7a50632e7 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 9342653
Default JavaAdoptOpenJDK-1.8.0_282-b08
Max. process+thread count74 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/5/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
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 37sDocker 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 35smaster passed
+1 💚compile0m 41smaster passed
+1 💚shadedjars4m 17sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 23smaster passed
_ Patch Compile Tests _
+1 💚mvninstall2m 56sthe patch passed
+1 💚compile0m 40sthe patch passed
+1 💚javac0m 40sthe patch passed
+1 💚shadedjars4m 14spatch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 22sthe patch passed
_ Other Tests _
+1 💚unit190m 4shbase-server in the patch passed.
209m 59s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/5/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 0629f9e04639 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 9342653
Default JavaAdoptOpenJDK-11.0.10+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/5/testReport/
Max. process+thread count2494 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/5/console
versionsgit=2.17.1 maven=3.6.3
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

ndimiduk added a commit to ndimiduk/hbase that referenced this pull request Jun 9, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit to ndimiduk/hbase that referenced this pull request Jun 9, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit to ndimiduk/hbase that referenced this pull request Jun 9, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit to ndimiduk/hbase that referenced this pull request Jun 9, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit that referenced this pull request Jun 10, 2022
In #4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit that referenced this pull request Jun 10, 2022
In #4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit that referenced this pull request Jun 10, 2022
In #4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
ndimiduk added a commit that referenced this pull request Jun 10, 2022
In #4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
wenwj0 pushed a commit to wenwj0/hbase that referenced this pull request Jun 14, 2022
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec1m 13sDocker 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 💚mvninstall2m 27smaster passed
+1 💚compile0m 43smaster passed
+1 💚shadedjars4m 14sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 39smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 43sroot in the patch failed.
-1 ❌compile0m 35shbase-server in the patch failed.
-0 ⚠️javac0m 35shbase-server in the patch failed.
-1 ❌shadedjars3m 18spatch has 28 errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 24shbase-server generated 2 new + 23 unchanged - 0 fixed = 25 total (was 23)
_ Other Tests _
-1 ❌unit0m 25shbase-server in the patch failed.
16m 22s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux aa39db64e54a 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 89bda2c
Default JavaAdoptOpenJDK-1.8.0_282-b08
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt
shadedjarshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/patch-shadedjars.txt
javadochttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-server.txt
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/testReport/
Max. process+thread count64 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 20sDocker 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 37smaster passed
+1 💚compile0m 56smaster passed
+1 💚shadedjars4m 12sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 31smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 54sroot in the patch failed.
-1 ❌compile0m 29shbase-server in the patch failed.
-0 ⚠️javac0m 29shbase-server in the patch failed.
-1 ❌shadedjars3m 9spatch has 28 errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 16shbase-server in the patch failed.
_ Other Tests _
-1 ❌unit0m 31shbase-server in the patch failed.
18m 57s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux a99f63ebd95f 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 89bda2c
Default JavaAdoptOpenJDK-11.0.10+9
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt
shadedjarshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-shadedjars.txt
javadochttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/testReport/
Max. process+thread count79 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 5sDocker 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 💚mvninstall2m 53smaster passed
+1 💚compile2m 25smaster passed
+1 💚checkstyle0m 34smaster passed
+1 💚spotless1m 3sbranch has no errors when running spotless:check.
+1 💚spotbugs2m 2smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 35sroot in the patch failed.
-1 ❌compile0m 35shbase-server in the patch failed.
-0 ⚠️javac0m 35shbase-server in the patch failed.
+1 💚checkstyle0m 33sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
-1 ❌hadoopcheck1m 32sThe patch causes 28 errors with Hadoop v3.1.2.
-1 ❌hadoopcheck3m 4sThe patch causes 28 errors with Hadoop v3.2.2.
-1 ❌hadoopcheck4m 50sThe patch causes 28 errors with Hadoop v3.3.1.
+1 💚spotless0m 49spatch has no errors when running spotless:check.
-1 ❌spotbugs0m 29shbase-server in the patch failed.
_ Other Tests _
+1 💚asflicense0m 13sThe patch does not generate ASF License warnings.
20m 9s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux 10ed3d446574 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 89bda2c
Default JavaAdoptOpenJDK-1.8.0_282-b08
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-compile-hbase-server.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-javac-3.1.2.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-javac-3.2.2.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-javac-3.3.1.txt
spotbugshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/artifact/yetus-general-check/output/patch-spotbugs-hbase-server.txt
Max. process+thread count64 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/6/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

GSON won't deserialize back into HBase native types so don't give the wrong
impression by using them.
@Apache-HBase

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 38sDocker 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 💚mvninstall2m 54smaster passed
+1 💚compile0m 40smaster passed
+1 💚shadedjars3m 46sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 24smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 13sroot in the patch failed.
-1 ❌compile0m 26shbase-server in the patch failed.
-0 ⚠️javac0m 26shbase-server in the patch failed.
-1 ❌shadedjars2m 41spatch has 28 errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 13shbase-server in the patch failed.
_ Other Tests _
-1 ❌unit0m 24shbase-server in the patch failed.
14m 11s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 8482e219fd4c 5.4.0-1043-aws #45~18.04.1-Ubuntu SMP Fri Apr 9 23:32:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 42853aa
Default JavaAdoptOpenJDK-11.0.10+9
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-compile-hbase-server.txt
shadedjarshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-shadedjars.txt
javadochttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk11-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/testReport/
Max. process+thread count73 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 21sDocker mode activated.
-0 ⚠️yetus0m 2sUnprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck
_ Prechecks _
_ master Compile Tests _
+1 💚mvninstall2m 47smaster passed
+1 💚compile0m 43smaster passed
+1 💚shadedjars4m 14sbranch has no errors when building our shaded downstream artifacts.
+1 💚javadoc0m 26smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 24sroot in the patch failed.
-1 ❌compile0m 29shbase-server in the patch failed.
-0 ⚠️javac0m 29shbase-server in the patch failed.
-1 ❌shadedjars3m 5spatch has 28 errors when building our shaded downstream artifacts.
-0 ⚠️javadoc0m 27shbase-server generated 2 new + 23 unchanged - 0 fixed = 25 total (was 23)
_ Other Tests _
-1 ❌unit0m 30shbase-server in the patch failed.
16m 6s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/Dockerfile
GITHUB PR#4470
Optional Testsjavac javadoc unit shadedjars compile
unameLinux eddbe0cc4c1a 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 42853aa
Default JavaAdoptOpenJDK-1.8.0_282-b08
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/patch-compile-hbase-server.txt
shadedjarshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/patch-shadedjars.txt
javadochttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/diff-javadoc-javadoc-hbase-server.txt
unithttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-jdk8-hadoop3-check/output/patch-unit-hbase-server.txt
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/testReport/
Max. process+thread count67 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/console
versionsgit=2.17.1 maven=3.6.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 🆗reexec1m 6sDocker 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 💚mvninstall2m 23smaster passed
+1 💚compile2m 22smaster passed
+1 💚checkstyle0m 30smaster passed
+1 💚spotless0m 42sbranch has no errors when running spotless:check.
+1 💚spotbugs1m 21smaster passed
_ Patch Compile Tests _
-1 ❌mvninstall1m 13sroot in the patch failed.
-1 ❌compile0m 28shbase-server in the patch failed.
-0 ⚠️javac0m 28shbase-server in the patch failed.
+1 💚checkstyle0m 29sthe patch passed
+1 💚whitespace0m 0sThe patch has no whitespace issues.
-1 ❌hadoopcheck1m 15sThe patch causes 28 errors with Hadoop v3.1.2.
-1 ❌hadoopcheck2m 31sThe patch causes 28 errors with Hadoop v3.2.2.
-1 ❌hadoopcheck3m 48sThe patch causes 28 errors with Hadoop v3.3.1.
+1 💚spotless0m 40spatch has no errors when running spotless:check.
-1 ❌spotbugs0m 24shbase-server in the patch failed.
_ Other Tests _
+1 💚asflicense0m 7sThe patch does not generate ASF License warnings.
16m 29s
SubsystemReport/Notes
DockerClientAPI=1.41 ServerAPI=1.41 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#4470
Optional Testsdupname asflicense javac spotbugs hadoopcheck hbaseanti spotless checkstyle compile
unameLinux 87c8f18a68df 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitydev-support/hbase-personality.sh
git revisionmaster / 42853aa
Default JavaAdoptOpenJDK-1.8.0_282-b08
mvninstallhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-mvninstall-root.txt
compilehttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-compile-hbase-server.txt
javachttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-compile-hbase-server.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-javac-3.1.2.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-javac-3.2.2.txt
hadoopcheckhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-javac-3.3.1.txt
spotbugshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/artifact/yetus-general-check/output/patch-spotbugs-hbase-server.txt
Max. process+thread count64 (vs. ulimit of 30000)
modulesC: hbase-server U: hbase-server
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-4470/7/console
versionsgit=2.17.1 maven=3.6.3 spotbugs=4.2.2
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

vinayakphegde pushed a commit to vinayakphegde/hbase that referenced this pull request Apr 4, 2024
In apache#4470 for HBASE-26192, it was noted that the HbckChore is kind of a pain to use and test
because it maintains a bunch of local state. By contract, the CatalogJanitorChore makes a nice
self-contained report. Let's update HbckChore to do the same.
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Change-Id: I69c1bf867b09b5b9b0d38f69f7cc37c8b48955d1
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

@apurtell@Apache-HBase@ndimiduk@ranganathg@virajjasani