+1

On Mon, 25 Mar 2019 at 15:56, Hunter Lee <hu...@apache.org> wrote:

> I would like to start a discussion on making Java 8 a minimum requirement
> and upgrading the Maven version for Helix's next feature release. I'd like
> to see how people feel about it.
>
> Did some homework on this and dug up a few precedences that are also
> top-level Apache projects dependent on ZooKeeper. The following
> documentation lists many pros of moving to Java 8 as well, many of which I
> will not include in this email for the sake of brevity (see the links
> below).
>
> Open-source community discussions for
>
> Apache Samza: link1
> <
> https://mail-archives.apache.org/mod_mbox/samza-dev/201610.mbox/%3CCAHUevGGnOQD_VmLWEdpFNq3Lv%2B6gQQmw_JKx9jDr5Cw%2BxFfGtQ%40mail.gmail.com%3E
> >
>
> Apache Kafka: link1 <https://markmail.org/message/gnrn5ccql7a2pmc5> link2
> <
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-118%3A+Drop+Support+for+Java+7
> >
>
> I've also had informal chats with PMC members of both Samza and Kafka about
> this specifically for more context, and from what they said, the transition
> has been very smooth.
>
> Here are Helix-specific reasons why I think the move would be beneficial:
>
> - Other Apache open-source platforms built on Helix such as Pinot and
> Gobblin all cite Java 8 as the minimum requirement. Building Helix in Java
> 8 will help contributors of Helix respond to feature/debugging requests in
> a more timely manner (without having to jump back and forth between Java 7
> and 8).
>
> - The recent change in Maven
> <
> https://central.sonatype.org/articles/2018/May/04/discontinued-support-for-tlsv11-and-below/
> >
> (Central
> Repository). Long story short, Helix build using JDK 7 on Maven 3.0.5+ will
> fail. Using JDK 8 solves this problem.
>
> The cost of moving to Java 8 is relatively low. Java 7 is forward
> compatibile with Java 8. However, there may be some backporting work needed
> due to the way Java 8 changed the ConcurrentHashMap implementation.
>
> As for Maven, Helix's requirement currently is 3.0.4 which is a version
> just below the required version other dependent Apache projects use (say,
> Pinot <https://media.readthedocs.org/pdf/pinot/latest/pinot.pdf>). Again,
> to save the contributors the trouble of having to navigate between Maven
> versions, I am also suggesting that we update this requirement.
>
>
> -Hunter
>


-- 
Olivier Lamy
http://twitter.com/olamy | http://linkedin.com/in/olamy

Reply via email to