I haven't been active in Apache Parquet, but I did not see any prior discussions on this topic in their Jira or dev mailing list.
Do we think a vote is needed before officially moving forward with Java 8 deprecation? On Mon, May 20, 2024 at 12:50 PM Laurent Goujon <laur...@dremio.com.invalid> wrote: > I also mentioned Apache Parquet and haven't seen someone mentioned if/when > Apache Parquet would transition. > > > > On Fri, May 17, 2024 at 9:07 AM Dane Pitkin <dpit...@apache.org> wrote: > > > Fokko, thank you for these datapoints! It's great to see how other low > > level Java OSS projects are approaching this. > > > > JB, I believe yes we have formal consensus to drop Java 8 in Arrow. There > > was no contention in current discussions across [GitHub issues | Arrow > > Mailing List | Community Syncs]. > > > > We can save Java 11 deprecation for a future discussion. For users on > Java > > 11, I do anticipate this discussion to come shortly after Java 8 > > deprecation is released. > > > > On Fri, May 17, 2024 at 10:02 AM Fokko Driesprong <fo...@apache.org> > > wrote: > > > > > I was traveling the last few weeks, so just a follow-up from my end. > > > > > > Fokko, can you elaborate on the discussions held in other OSS projects > to > > >> drop Java <17? How did they weigh the benefits/drawbacks for dropping > > both > > >> Java 8 and 11 LTS versions? I'd also be curious if other projects plan > > to > > >> support older branches with security patches. > > > > > > > > > So, the ones that I'm involved with (including a TLDR): > > > > > > - Avro: > > > - (April 2024: Consensus on moving to 11+, +1 for moving to 17+) > > > https://lists.apache.org/thread/6vbd3w5qk7mpb5lyrfyf2s0z1cymjt5w > > > - (Jan 2024: Consensus on dropping 8) > > > https://lists.apache.org/thread/bd39zhk655pgzfctq763vp3z4xrjpx58 > > > - Iceberg: > > > - (Jan 2023: Concerns about Hive): > > > https://lists.apache.org/thread/hr7rdxvddw3fklfyg3dfbqbsy81hzhyk > > > - (Feb 2024: Concensus to drop Hadoop 2.x, and move to JDK11+, > > > also +1's for moving to 17+): > > > https://lists.apache.org/thread/ntrk2thvsg9tdccwd4flsdz9gg743368 > > > > > > I think the most noteworthy (slow-moving in general): > > > > > > - Spark 4 supports JDK 17+ > > > - Hive 4 is still on Java 8 > > > <https://github.com/apache/hive?tab=readme-ov-file#java> > > > > > > It looks like most of the projects are looking at each other. Keep in > > > mind, that projects that still support older versions of Java, can > still > > > use older versions of Arrow. > > > > > > [image: spiderman-pointing-at-spiderman.jpeg] > > > (in case the image doesn't come through, that's Spiderman pointing at > > > Spiderman) > > > > > > Concerning the Java 11 support, some data: > > > > > > - Oracle 11: support until January 2032 (extended fee has been > waived) > > > - Cornetto 11: September 2027 > > > - Adoptium 11: At least Oct 2027 > > > - Zulu 11: Jan 2032 > > > - OpenJDK11: October 2024 > > > > > > I think it is fair to support 11 for the time being, but at some point, > > we > > > also have to move on and start exploiting the new features and make > sure > > > that we keep up to date. For example, Java 8 also has extended support > > > until 2030. Dependabot on the Iceberg project > > > < > > > https://github.com/apache/iceberg/pulls?q=is%3Aopen+is%3Apr+label%3Adependencies > > > > > > nicely shows which projects are already at JDK11+ :) > > > > > > Thanks Dane for driving this! > > > > > > Kind regards, > > > Fokko > > > > > > > > > > > > > > > > > > Op vr 17 mei 2024 om 07:44 schreef Jean-Baptiste Onofré < > j...@nanthrax.net > > >: > > > > > >> Hi Dane > > >> > > >> Do we have a formal consensus about Java version in regards of arrow > > >> version ? > > >> I agree with the plan but just wondering if it’s ok from everyone with > > the > > >> community. > > >> > > >> Regards > > >> JB > > >> > > >> Le jeu. 16 mai 2024 à 18:05, Dane Pitkin <dpit...@apache.org> a > écrit : > > >> > > >> > To wrap up this thread on Java 8 deprecation, here is my current > plan > > of > > >> > action: > > >> > > > >> > 1) Arrow v17 will be the last version supporting Java 8 and the > > release > > >> > notes will warn of its impending deprecation. > > >> > 2) Arrow v18 will be the first release supporting min version Java > 11. > > >> > > > >> > I have updated the GH issue[1] to reflect this. > > >> > > > >> > [1]https://github.com/apache/arrow/issues/38051 > > >> > > > >> > On Wed, May 8, 2024 at 5:46 PM Dane Pitkin > > <d...@voltrondata.com.invalid > > >> > > > >> > wrote: > > >> > > > >> > > Thank you all for your valuable input. The consensus from my > > >> > understanding > > >> > > is that dropping Java 8 is not contentious, so we will move > forward > > >> here. > > >> > > > > >> > > We won't drop Java 11 yet, but there's a chance it will happen > > sooner > > >> > than > > >> > > later. I brought up Java 8 & 11 deprecation in the community sync > > >> again > > >> > > today. The summary is that the ASF could be enforcing stricter > > >> security > > >> > > practices in the near future. Arrow Java may be forced to drop > Java > > >> 11 if > > >> > > any of its dependencies no longer support Java 11. This is > something > > >> > we'll > > >> > > have to investigate and monitor. When the time is right, we should > > >> start > > >> > a > > >> > > new thread on the mailing list to discuss. > > >> > > > > >> > > Thanks, > > >> > > Dane > > >> > > > > >> > > On Sat, May 4, 2024 at 2:51 AM <martin.trave...@icloud.com > .invalid> > > >> > wrote: > > >> > > > > >> > > > Hi, > > >> > > > > > >> > > > We were originally expecting to keep Java 11 to the 2026 EOL > date > > >> for > > >> > > > extended support, but now that date is moved to 2032 which feels > > >> like > > >> > > more > > >> > > > time than we need. The issue for us is that getting technology > > >> approved > > >> > > for > > >> > > > use in an enterprise can have ridiculously long lead times, so > > >> having a > > >> > > > minimum supported version that is only 2 years old, while > probably > > >> ok > > >> > in > > >> > > > most case, would be a bit aggressive. We use optional > dependencies > > >> > where > > >> > > we > > >> > > > can, so e.g. the Java 17 dependency for Spark 4 would only > affect > > >> > clients > > >> > > > using Spark 4, and they could wait to upgrade. But we chose to > use > > >> > Arrow > > >> > > in > > >> > > > the core of our product, it is the internal format everything > else > > >> goes > > >> > > > through. On the compliance side we have to keep current with > > >> security > > >> > > > updates, so there is no option to stick on an old version. > > >> > > > > > >> > > > If we were to drop Java 11 after the next LTS comes out, i.e. > > 2025 / > > >> > > 2026, > > >> > > > then the three latest LTS versions would be supported and the > > >> minimum > > >> > > > version would have been available for 4 - 5 years. I think it > > would > > >> be > > >> > > very > > >> > > > hard to argue 17 can’t be made available at that point. If Arrow > > >> forces > > >> > > our > > >> > > > hand then obviously we’ll have to go sooner, but it wouldn’t be > > >> ideal > > >> > for > > >> > > > us. > > >> > > > > > >> > > > Lastly just on language capabilities, the only things we’re > really > > >> > > > interested in are performance related, probably virtual threads > > and > > >> > > foreign > > >> > > > memory would be the main ones. Both of the those could be > optional > > >> > > > dependencies, in the case of FFM we’d rely on either yourselves > or > > >> > Netty > > >> > > > anyway to provide an allocator. So in fact there is very little > > >> benefit > > >> > > for > > >> > > > us to drop Java 11 early, all it costs us is one extra CI job. > > >> > > > > > >> > > > Hope some of this is helpful - apologies for the high latency, > > busy > > >> as > > >> > > > always!! > > >> > > > > > >> > > > Martin. > > >> > > > > > >> > > > > > >> > > > > On 1 May 2024, at 22:38, Dane Pitkin > > <d...@voltrondata.com.INVALID > > >> > > > >> > > > wrote: > > >> > > > > > > >> > > > > Thanks, Martin. It's great to hear of real-world use cases. Do > > you > > >> > > > > anticipate any timeline for dropping Java 11 for your product? > > If > > >> > Arrow > > >> > > > did > > >> > > > > drop Java 11, then it sounds like pinning Arrow Java to an > older > > >> > > version > > >> > > > > wouldn't be an ideal option if security patches are not > > >> backported. > > >> > > > > > > >> > > > > Fokko, can you elaborate on the discussions held in other OSS > > >> > projects > > >> > > to > > >> > > > > drop Java <17? How did they weigh the benefits/drawbacks for > > >> dropping > > >> > > > both > > >> > > > > Java 8 and 11 LTS versions? I'd also be curious if other > > projects > > >> > plan > > >> > > to > > >> > > > > support older branches with security patches. > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > > > >> > > > > On Tue, Apr 30, 2024 at 4:14 PM <martin.trave...@icloud.com > > >> .invalid> > > >> > > > wrote: > > >> > > > > > > >> > > > >> Speaking for my own product we would like to see Java 11 > > >> support, we > > >> > > > rely > > >> > > > >> heavily on Arrow and have Java 11 as our minimum supported > > >> version. > > >> > > We’d > > >> > > > >> like to keep doing that if possible. Our clients are big > > >> enterprises > > >> > > > with > > >> > > > >> notoriously sluggish update cycles, so we want to offer > maximum > > >> > > > >> compatibility. Once security patches are no longer available > on > > >> the > > >> > > > regular > > >> > > > >> public channels then there is a compliance issue, so we > > generally > > >> > > follow > > >> > > > >> the EOL schedule of our dependencies. > > >> > > > >> > > >> > > > >> Corretto, Adoptium and Zulu all have recent public builds of > > >> both 8 > > >> > > and > > >> > > > 11 > > >> > > > >> and look set to support them with public builds for many > years > > to > > >> > > come. > > >> > > > >> Several organisations I have worked with switched away from > > >> Oracle > > >> > > when > > >> > > > >> they made their licensing blunder with Java 8 and although > that > > >> is > > >> > > > >> rectified now, the change seems to have stuck in quite a few > > >> places > > >> > > (at > > >> > > > >> least in my anecdotal experience). > > >> > > > >> > > >> > > > >> A major practical difference to me in Java 17 is the strong > > >> > > > encapsulation > > >> > > > >> of internals. Since that affects the majority of serious Java > > >> > > > applications > > >> > > > >> then perhaps most people have figured out by now to add the > JVM > > >> > params > > >> > > > that > > >> > > > >> let Java continue working. Still, it could be a > consideration, > > if > > >> > > > Java17 > > >> > > > >> is the baseline supported version. > > >> > > > >> > > >> > > > >> Regards, > > >> > > > >> Martin. > > >> > > > >> > > >> > > > >> - In case anyone is curious why we don’t support Java 8 per > our > > >> own > > >> > > > >> policy, it’s because of the “var” keyword - seriously, why > did > > >> Java > > >> > > > take so > > >> > > > >> long with that, even C++ got there sooner! > > >> > > > >> > > >> > > > >>> On 30 Apr 2024, at 16:20, Jacob Wujciak < > > assignu...@apache.org> > > >> > > wrote: > > >> > > > >>> > > >> > > > >>> Hello everyone! > > >> > > > >>> Great to see this move forward! > > >> > > > >>> +1 on dropping both 8 and 11 unless there is very good > reason > > to > > >> > keep > > >> > > > 11 > > >> > > > >>> around. > > >> > > > >>> Otherwise people will just move to 11 and then have the pain > > of > > >> > > > migration > > >> > > > >>> again when we drop that (which will happen soon regardless > > imo). > > >> > > > >>> > > >> > > > >>> Am Di., 30. Apr. 2024 um 16:18 Uhr schrieb Dane Pitkin > > >> > > > >>> <d...@voltrondata.com.invalid>: > > >> > > > >>> > > >> > > > >>>> Thanks, JB. Are we aware of any downstream dependencies > that > > >> would > > >> > > > >> benefit > > >> > > > >>>> from maintaining Java 11 support? Apache Spark jumped > > straight > > >> to > > >> > > Java > > >> > > > >> 17. > > >> > > > >>>> It seems other projects are dropping both 8 and 11 at the > > same > > >> > time > > >> > > as > > >> > > > >>>> mentioned by Fokko. From a maintenance perspective, it > would > > be > > >> > nice > > >> > > > to > > >> > > > >>>> drop both. > > >> > > > >>>> > > >> > > > >>>> On Mon, Apr 29, 2024 at 11:20 AM Jean-Baptiste Onofré < > > >> > > > j...@nanthrax.net> > > >> > > > >>>> wrote: > > >> > > > >>>> > > >> > > > >>>>> Hi > > >> > > > >>>>> > > >> > > > >>>>> I think it's time to drop JDK8 support. I would say that > we > > >> > should > > >> > > > >>>>> keep Java11 (jumping directly to Java17 would be > problematic > > >> > > > >>>>> potentially for some users I guess). > > >> > > > >>>>> > > >> > > > >>>>> Regards > > >> > > > >>>>> JB > > >> > > > >>>>> > > >> > > > >>>>> On Thu, Apr 25, 2024 at 10:21 PM James Duong > > >> > > > >>>>> <james.du...@improving.com.invalid> wrote: > > >> > > > >>>>>> > > >> > > > >>>>>> If we dropped JDK 8, we could use the JDK to compile > > >> > > > module-info.java > > >> > > > >>>>> files. Then we could remove the custom maven plugin we’re > > >> using > > >> > for > > >> > > > >>>>> compiling module-info.java files for JPMS support and get > > >> better > > >> > > IDE > > >> > > > >>>>> integration (as what we’re doing currently somewhat > > shoe-horns > > >> > > module > > >> > > > >>>>> information alongside JDK8 bytecode). > > >> > > > >>>>>> > > >> > > > >>>>>> From: Dane Pitkin <d...@voltrondata.com.INVALID> > > >> > > > >>>>>> Date: Thursday, April 25, 2024 at 1:02 PM > > >> > > > >>>>>> To: dev@arrow.apache.org <dev@arrow.apache.org> > > >> > > > >>>>>> Subject: [DISCUSS] Drop Java 8 support > > >> > > > >>>>>> Hi all, > > >> > > > >>>>>> > > >> > > > >>>>>> I would like to revisit the discussion of dropping Java 8 > > >> (and > > >> > > maybe > > >> > > > >>>> 11) > > >> > > > >>>>>> from Arrow's Java implementation. See GH issue[1] below. > > This > > >> > was > > >> > > > also > > >> > > > >>>>>> discussed in the last Arrow community sync meeting on > > >> > 2024-04-24. > > >> > > > >>>>>> > > >> > > > >>>>>> For context, this was discussed[2] last year on this > > mailing > > >> > list. > > >> > > > We > > >> > > > >>>>>> decided to revisit the discussion around the June 2024 > > >> release > > >> > > > (Arrow > > >> > > > >>>>> v17). > > >> > > > >>>>>> The timing coincides with the initial release of Apache > > Spark > > >> > > 4.0.0, > > >> > > > >>>>> which > > >> > > > >>>>>> drops both Java 8 and 11 support. > > >> > > > >>>>>> > > >> > > > >>>>>> For background, we chose not to drop Java 8 support last > > year > > >> > > > because > > >> > > > >>>>> Arrow > > >> > > > >>>>>> is seen as a low level library that should support as > many > > >> > > > >> environments > > >> > > > >>>>> as > > >> > > > >>>>>> possible. Nowadays, we see more enthusiasm for dropping > > Java > > >> 8 > > >> > > (and > > >> > > > >> 11) > > >> > > > >>>>> as > > >> > > > >>>>>> exemplified by Apache Spark as well as Apache Iceberg[3]. > > >> > > > >>>>>> > > >> > > > >>>>>> Is it time to consider dropping Java 8? Should we drop > Java > > >> 11 > > >> > and > > >> > > > >> skip > > >> > > > >>>>>> straight to Java 17 as our minimum version? What > > >> implications do > > >> > > we > > >> > > > >>>> need > > >> > > > >>>>> to > > >> > > > >>>>>> be aware of? > > >> > > > >>>>>> > > >> > > > >>>>>> Thanks, > > >> > > > >>>>>> Dane > > >> > > > >>>>>> > > >> > > > >>>>>> [1]https://github.com/apache/arrow/issues/38051 > > >> > > > >>>>>> [2] > > >> > > https://lists.apache.org/thread/s07jx58yw4mkl54t3bkggnyg0sftcrr8 > > >> > > > >>>>>> [3] > > >> > > https://lists.apache.org/thread/ntrk2thvsg9tdccwd4flsdz9gg743368 > > >> > > > >>>>> > > >> > > > >>>> > > >> > > > >> > > >> > > > >> > > >> > > > > > >> > > > > > >> > > > > >> > > > >> > > > > > >