Skip to content

HBASE-29531 Migrate RegionServer Status Jamon page back to JSP - #7492

Merged
PDavid merged 2 commits into
apache:branch-2from
PDavid:HBASE-29531-jamon-jsp-rsstatus-branch-2
Dec 3, 2025
Merged

HBASE-29531 Migrate RegionServer Status Jamon page back to JSP#7492
PDavid merged 2 commits into
apache:branch-2from
PDavid:HBASE-29531-jamon-jsp-rsstatus-branch-2

Conversation

@PDavid

Copy link
Copy Markdown
Contributor

This is the 2/3 step of the Jamon to JSP migration: the Region Server Status page.

Did the migration the same way as for the Master Status page: #6875

Migrated the Jamon code to JSP as close as possible. Extracted the duplicated formatZKString method to new java class: ZKStringFormatter and added unit tests.

Changed the Region Server Status page back to /regionserver.jsp. Made sure that /rs-status redirects to /regionserver.jsp.

Extracted the BlockCache inline CSS styles to hbase.css file. Also extracted the large BlockCache Hit Ratio periods paging JavaScript code to separate .js file.

Introduced a src/main/resources/hbase-webapps/common directory where we can place common JSP files which are used by both Master and RegionServer JSP pages. This required to adjust the JSP compiler Maven Antrun plugin a bit.

Extracted the inline tablesorter initialization JavaScript code to separate file.

Signed-off-by: Duo Zhang zhangduo@apache.org
(cherry picked from commit 7892207)

…e#7371)
This is the 2/3 step of the Jamon to JSP migration: the Region Server Status page.
Did the migration the same way as for the Master Status page: apache#6875
Migrated the Jamon code to JSP as close as possible. Extracted the duplicated `formatZKString` method to new java class: ZKStringFormatter and added unit tests.
Changed the Region Server Status page back to `/regionserver.jsp`. Made sure that `/rs-status` redirects to `/regionserver.jsp`.
Extracted the BlockCache inline CSS styles to `hbase.css` file. Also extracted the large BlockCache Hit Ratio periods paging JavaScript code to separate .js file.
Introduced a `src/main/resources/hbase-webapps/common` directory where we can place common JSP files which are used by both Master and RegionServer JSP pages. This required to adjust the JSP compiler Maven Antrun plugin a bit.
Extracted the inline tablesorter initialization JavaScript code to separate file.
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit 7892207)
@PDavidPDavid self-assigned this Dec 1, 2025
@PDavid

Copy link
Copy Markdown
ContributorAuthor

This is a backport of #7371 to branch-2. I cherry-picked the 7892207 commit which needed minor fix (HBaseTestingUtil -> HBaseTestingUtility).

Testing

Tested this locally the same way as described here: #7371 (comment)

Also configured HBase in pseudo-distributed mode and checked the RS Status page.

@PDavidPDavid added the backport This PR is a back port of some issue or issues already committed to master label Dec 1, 2025
@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.

Assert content type `text/html;charset=utf-8` vs `text/html`.
@Apache-HBase

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeLogfileComment
+0 🆗reexec0m 45sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+0 🆗codespell0m 0scodespell was not available.
+0 🆗detsecrets0m 0sdetect-secrets was not available.
+0 🆗jshint0m 0sjshint was not available.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚hbaseanti0m 0sPatch does not have any anti-patterns.
_ branch-2 Compile Tests _
+0 🆗mvndep0m 15sMaven dependency ordering for branch
+1 💚mvninstall3m 27sbranch-2 passed
+1 💚compile3m 25sbranch-2 passed
+1 💚checkstyle0m 48sbranch-2 passed
+1 💚spotbugs1m 36sbranch-2 passed
+1 💚spotless0m 49sbranch has no errors when running spotless:check.
_ Patch Compile Tests _
+0 🆗mvndep0m 19sMaven dependency ordering for patch
+1 💚mvninstall3m 9sthe patch passed
+1 💚compile3m 21sthe patch passed
+1 💚javac3m 21sthe patch passed
+1 💚blanks0m 0sThe patch has no blanks issues.
+1 💚checkstyle0m 39shbase-server: The patch generated 0 new + 0 unchanged - 4 fixed = 0 total (was 4)
+1 💚checkstyle0m 8sThe patch passed checkstyle in hbase-shell
-0 ⚠️rubocop0m 13s/results-rubocop.txtThe patch generated 1 new + 84 unchanged - 1 fixed = 85 total (was 85)
+1 💚xmllint0m 1sNo new issues.
+1 💚spotbugs1m 48sthe patch passed
+1 💚hadoopcheck17m 25sPatch does not cause any errors with Hadoop 2.10.2 or 3.3.6 3.4.1.
+1 💚spotless0m 46spatch has no errors when running spotless:check.
_ Other Tests _
+1 💚asflicense0m 19sThe patch does not generate ASF License warnings.
41m 50s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/artifact/yetus-general-check/output/Dockerfile
GITHUB PR#7492
Optional Testsdupname asflicense javac codespell detsecrets xmllint hadoopcheck spotless compile spotbugs checkstyle hbaseanti jshint rubocop
unameLinux 89f6454c2ccf 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 revisionbranch-2 / c446f21
Default JavaEclipse Adoptium-11.0.23+9
Max. process+thread count79 (vs. ulimit of 30000)
modulesC: hbase-server hbase-shell U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/console
versionsgit=2.34.1 maven=3.9.8 spotbugs=4.7.3 rubocop=1.37.1 xmllint=20913
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 🆗reexec0m 45sDocker mode activated.
-0 ⚠️yetus0m 6sUnprocessed 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 🆗mvndep0m 18sMaven dependency ordering for branch
+1 💚mvninstall3m 35sbranch-2 passed
+1 💚compile1m 11sbranch-2 passed
+1 💚javadoc0m 38sbranch-2 passed
+1 💚shadedjars6m 41sbranch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗mvndep0m 20sMaven dependency ordering for patch
+1 💚mvninstall3m 5sthe patch passed
+1 💚compile1m 8sthe patch passed
+1 💚javac1m 8sthe patch passed
+1 💚javadoc0m 36sthe patch passed
+1 💚shadedjars6m 39spatch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚unit214m 18shbase-server in the patch passed.
+1 💚unit7m 36shbase-shell in the patch passed.
251m 55s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile
GITHUB PR#7492
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 37c6a44fb19d 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 revisionbranch-2 / c446f21
Default JavaEclipse Adoptium-11.0.23+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/testReport/
Max. process+thread count3236 (vs. ulimit of 30000)
modulesC: hbase-server hbase-shell U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/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 38sDocker mode activated.
-0 ⚠️yetus0m 6sUnprocessed 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 🆗mvndep0m 17sMaven dependency ordering for branch
+1 💚mvninstall4m 14sbranch-2 passed
+1 💚compile1m 35sbranch-2 passed
+1 💚javadoc0m 47sbranch-2 passed
+1 💚shadedjars7m 27sbranch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗mvndep0m 22sMaven dependency ordering for patch
+1 💚mvninstall3m 50sthe patch passed
+1 💚compile1m 24sthe patch passed
+1 💚javac1m 24sthe patch passed
+1 💚javadoc0m 43sthe patch passed
+1 💚shadedjars8m 56spatch has no errors when building our shaded downstream artifacts.
_ Other Tests _
-1 ❌unit274m 22s/patch-unit-hbase-server.txthbase-server in the patch failed.
+1 💚unit8m 17shbase-shell in the patch passed.
320m 9s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile
GITHUB PR#7492
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 9a0fa6c125db 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 revisionbranch-2 / c446f21
Default JavaEclipse Adoptium-17.0.11+9
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/testReport/
Max. process+thread count3173 (vs. ulimit of 30000)
modulesC: hbase-server hbase-shell U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/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 🆗reexec0m 51sDocker mode activated.
-0 ⚠️yetus0m 6sUnprocessed 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 🆗mvndep0m 18sMaven dependency ordering for branch
+1 💚mvninstall3m 35sbranch-2 passed
+1 💚compile1m 27sbranch-2 passed
+1 💚javadoc0m 43sbranch-2 passed
+1 💚shadedjars6m 21sbranch has no errors when building our shaded downstream artifacts.
_ Patch Compile Tests _
+0 🆗mvndep0m 15sMaven dependency ordering for patch
+1 💚mvninstall2m 50sthe patch passed
+1 💚compile1m 17sthe patch passed
+1 💚javac1m 17sthe patch passed
+1 💚javadoc0m 59sthe patch passed
+1 💚shadedjars6m 28spatch has no errors when building our shaded downstream artifacts.
_ Other Tests _
+1 💚unit288m 40shbase-server in the patch passed.
+1 💚unit7m 54shbase-shell in the patch passed.
327m 6s
SubsystemReport/Notes
DockerClientAPI=1.43 ServerAPI=1.43 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile
GITHUB PR#7492
Optional Testsjavac javadoc unit shadedjars compile
unameLinux 6ae2dbaf83be 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 revisionbranch-2 / c446f21
Default JavaTemurin-1.8.0_412-b08
Test Resultshttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/2/testReport/
Max. process+thread count3125 (vs. ulimit of 30000)
modulesC: hbase-server hbase-shell U: .
Console outputhttps://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-7492/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.

@PDavid

Copy link
Copy Markdown
ContributorAuthor

TestClientScannerTimeouts, TestStochasticLoadBalancerLargeCluster tests failed in the PR build but these are unrelated and they are running successfully locally.

@PDavid
PDavid marked this pull request as ready for review December 3, 2025 09:29
@PDavid
PDavid merged commit e7be4f3 into apache:branch-2Dec 3, 2025
1 check failed
@PDavid
PDavid deleted the HBASE-29531-jamon-jsp-rsstatus-branch-2 branch December 3, 2025 09:38
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backportThis PR is a back port of some issue or issues already committed to master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@PDavid@Apache-HBase