Hi,

Thank you all for your comments and perspectives.

Summing up so far:
It is clear that dropping JDK 8 is imminent, but it is also inevitably
painful for some users.
We don't have precise date/version when Java 8 can be dropped (along with
Hive module) and Iceberg 1.7 was proposed for that.

We have consensus that *after* we drop Java 8, we can add Java 21 support
and testing. This is awesome.

What we didn't focus on yet, is this question:
can we add Java 21 support and testing *before* we drop Java 8?
It has a caveat (we can't run formatter on 21 and 8, and we need to choose
one).
I am proposing this because it seems to me an incremental improvement over
the current state.
Increasing reliability or releases for those who already moved ahead and
preventing any potential regressions/
What do you think?

Best,
Piotr






On Wed, 10 Jul 2024 at 10:09, Jean-Baptiste Onofré <j...@nanthrax.net> wrote:

> Hi Piotr
>
> I already commented on the PR directly, so let me share here: I'm in
> favor of dropping Java8 and directly jumping to Java21.
> However, to do this jump, I would need to remove "old" modules, like
> Hive. I think it's totally acceptable on a new major version. I shared
> this in the thread about Iceberg Java 2.0, but we didn't have a lot of
> discussions about it.
>
> So, I would suggest:
> Step 0. Agree in which branch/major version we plan this
> Step 1. Remove old modules requiring Java8 (hive)
> Step 2. Upgrade to JDK21 (build + CI) and Java Format
>
> Regards
> JB
>
> On Tue, Jul 9, 2024 at 2:31 PM Piotr Findeisen
> <piotr.findei...@gmail.com> wrote:
> >
> > Hi,
> >
> > Java 21 is the latest "LTS version" released GA in September 2023.
> > Some Iceberg users already run with Java 21 on production (and FWIW
> Trino runs with 22 already)
> > I thought it would be nice to add support for building and testing
> Iceberg with Java 21.
> >
> > Conceptually this is simple (see PR), but there is a caveat worth
> discussing:
> > There seems to be no version of Google Java Format library that can run
> under JDK 8 and JDK 21.
> > Choosing Google Java Format version dynamically is not an option,
> because different versions have slightly different formatting preferences,
> so updating formatter version requires updating the code in a handful of
> places.
> >
> > Question:
> > do we want to add support for building and testing with Java 21?
> > Ability to test with Java 21 would match what some of Iceberg users are
> doing.
> > If we choose so, we would simply disable spotless formatter when build
> runs on Java 21 (or 8 if this is preferred instead)
> >
> > or we prefer to wait until we can drop Java 8 support first, and only
> then add Java 21 support?
> >
> > Pre-existing context:
> > the topic has been discussed on the PR here:
> https://github.com/apache/iceberg/pull/10474#discussion_r1658513019
> > and it was proposed there to bring this to Dev group attention.
> >
> > Best,
> > PF
> >
>

Reply via email to