Skip to content

ZOOKEEPER-5038 Decouple HTTP admin server into a separate module.#2395

Open
txangel wants to merge 1 commit into
apache:masterfrom
txangel:ZOOKEEPER-5038-decouple-admin-server
Open

ZOOKEEPER-5038 Decouple HTTP admin server into a separate module.#2395
txangel wants to merge 1 commit into
apache:masterfrom
txangel:ZOOKEEPER-5038-decouple-admin-server

Conversation

@txangel
Copy link
Copy Markdown

@txangel txangel commented May 20, 2026

Extract JettyAdminServer into a new zookeeper-http-admin module that targets Java 17 and Jetty 12 (EE8).
This decouples the Jetty upgrade from the ZooKeeper Java baseline, allowing the rest of ZooKeeper to remain on Java 8/11.

The existing reflection-based loading in AdminServerFactory means zookeeper-server requires no interface changes.
On Java 8/11, the admin server falls back to DummyAdminServer with a clear warning in the logs about the Java 17 requirement.

Breaking change: the HTTP admin server, and only the admin server, now requires Java 17+.

@txangel txangel force-pushed the ZOOKEEPER-5038-decouple-admin-server branch from 693772c to 317ea0b Compare May 20, 2026 20:43
Extract JettyAdminServer into a new zookeeper-http-admin module that
targets Java 17 and Jetty 12 (EE8). This decouples the Jetty upgrade
from the ZooKeeper Java baseline, allowing the rest of ZooKeeper to
remain on Java 8/11.

The existing reflection-based loading in AdminServerFactory means
zookeeper-server requires no interface changes. On Java 8/11, the
admin server gracefully falls back to DummyAdminServer with a clear
warning about the Java 17 requirement.

Breaking change: the HTTP admin server now requires Java 17+.
@txangel txangel force-pushed the ZOOKEEPER-5038-decouple-admin-server branch from 317ea0b to d512ade Compare May 20, 2026 20:51
Copy link
Copy Markdown
Contributor

@anmolnar anmolnar left a comment

Choose a reason for hiding this comment

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

Thanks for the contribution, but I don't see the point of decoupling. We're planning to upgrade to JDK17 on the entire project with #2376 anyways, why would deal with AS separately?

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