Skip to content
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

Split maven modules with dependency on jetty http server #24395

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

ZacBlanco
Copy link
Contributor

@ZacBlanco ZacBlanco commented Jan 17, 2025

Description

This commit splits presto-main into presto-main and presto-main-base. presto-main continues to be the module responsible for the PrestoServer executable which includes the airlift http-server dependency. presto-main-base
is all of the internal classes required to run presto and does not depend on the airlift http-server dependency.

Motivation and Context

This is in preparation to upgrade to Java 17 within Presto. The entire Presto codebase is capable of moving to 17, however there are users of Presto-On-Spark which can't upgrade to 17 yet. This PR is a stopgap to allow us to upgrade a large portion of the codebase while supporting PoS on Java 8. PoS can now depend on presto-main-base instead of presto-main.

Eventually these modules may be recombined after all PoS users have moved to Java 17 runtime, or we can just upgrade their build compatibility to 17.

Impact

Should have no user-facing impact.

Test Plan

Existing tests.

Contributor checklist

  • Please make sure your submission complies with our contributing guide, in particular code style and commit standards.
  • PR description addresses the issue accurately and concisely. If the change is non-trivial, a GitHub Issue is referenced.
  • Documented new properties (with its default value), SQL syntax, functions, or other functionality.
  • If release notes are required, they follow the release notes guidelines.
  • Adequate tests were added if applicable.
  • CI passed.

Release Notes

== NO RELEASE NOTE ==

@prestodb-ci prestodb-ci added the from:IBM PR from IBM label Jan 17, 2025
@prestodb-ci prestodb-ci requested review from a team, infvg and bibith4 and removed request for a team January 17, 2025 19:56
@ZacBlanco ZacBlanco force-pushed the jetty-split branch 2 times, most recently from 70f9f39 to b252f85 Compare January 21, 2025 21:00
This commit splits presto-main into presto-main
and presto-main-base. presto-main-base is now the "main"
module which builds the PrestoServer binary which includes
the airlift http-server dependency. presto-main
is all of the internal classes required to run presto and
does not depend on jetty.

This is in preparation to upgrade to Java 17 within Presto.
The latest supported versions of Jetty require Java 17. This
change allows us to maintain Presto-On-Spark compatibility
with Java 8 as long as we keep the presto-main module compiling
to java 8.

Eventually these modules may be recombined after all PoS users
have moved to Java 17 runtime.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
from:IBM PR from IBM
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants