+1 (nb) Read through the long discussion, the plan makes sense to me. ________________________________ From: Brandon Williams <dri...@gmail.com> Sent: Friday, June 13, 2025 12:09:35 PM To: dev@cassandra.apache.org <dev@cassandra.apache.org> Subject: Re: [VOTE] Clarifying our JDK Support Policy
+1 Kind Regards, Brandon On Fri, Jun 13, 2025 at 12:23 PM Josh McKenzie <jmcken...@apache.org> wrote: > > If removed, we drop the required older JDK across all branches when the > feature is removed. > > Talking to Doug about this; let's revise this phrasing to: > "When the feature has been removed from all supported branches, the > constraint to retain JDK support for that feature drops with it." > > On Fri, Jun 13, 2025, at 7:58 AM, Josh McKenzie wrote: > > +1 > > On Fri, Jun 13, 2025, at 7:56 AM, Josh McKenzie wrote: > > [DISCUSS] thread: > https://lists.apache.org/thread/vr7j2ob92k6fbcwvlfo60l3scylzdbft > > Text to vote on: > -------------------------------------------------------------------------------------- > [New LTS JDK Adoption] > > When a new JDK goes LTS, we prioritize: > > Moving trunk to build, run, pass CI, and support language level of that JDK, > dropping others > Adding support to run on that JDK to all supported GA releases, passing all > CI using that JDK > > These 2 operations must merge atomically. This allows us to preserve the > contract of allowing like-to-like JDK's for a live C* upgrade > > [Build, run, language level, Pre Commit CI, EOL] > > trunk builds, runs, has CI on, and supports the language level of 1 JDK at > any given time (ideally latest LTS JDK) > > Supported non-trunk GA branches: > > build, run, pass CI, and support the language level of the oldest JDK they > are certified for > Are supported to run on all LTS JDK's between their oldest supported and > newest LTS supported by trunk > > In the very rare case a feature would have to be removed due to JDK change > (think UDF's scripting engine), we instead keep the maximum allowable JDK for > that feature supported on trunk and subsequent releases. The feature is > flagged for deprecate-then-remove or re-implementation based on dev ML > discussion. If removed, we drop the required older JDK across all branches > when the feature is removed. Supporting new LTS JDK's is considered higher > priority than supporting features that JDK's are no longer compatible with, > pending debate on the dev ML. > > Dropping JDK support happens naturally as old releases go EOL. > > [Post Commit JDK validation CI] > > Periodically we will run all CI pipelines for all runtime supported JDK's for > that branch (cadence TBD) > We will add basic perf testing across all GA branches + their supported > runtime JDK's with reference workloads from easy-cass-stress for a simple > performance-based smoke test > > -------------------------------------------------------------------------------------- > Vote structure: > > Roll call is 25. > Quorum: 13 (min required votes to qualify results) > Super-majority of participating votes in favor required to pass (9 in favor > at 13 min votes, etc) > > Will leave the vote open for a week. > > >