If breaking savepoint compatibility will be eventually an option, I would
recommend to try to upgrade Flink's Scala even to *2.13*

Best regards,
Alexey

On Fri, Apr 28, 2023 at 10:22 AM Chesnay Schepler <ches...@apache.org>
wrote:

> We don't know yet. I wanted to run some more experiments to see if I cant
> get Scala 2.12.7 working on Java 17.
>
> If that doesn't work, then it would also be an option to bump Scala in the
> Java 17 builds (breaking savepoint compatibility), and users should just
> only use the Java APIs.
>
> The alternative to _that_ is doing this when we drop the Scala API.
>
> On 28/04/2023 01:11, Thomas Weise wrote:
>
> Is the intention to bump the Flink major version and only support Java
> 17+? If so, can Scala not be upgraded at the same time?
>
> Thanks,
> Thomas
>
>
> On Thu, Apr 27, 2023 at 4:53 PM Martijn Visser <martijnvis...@apache.org>
> wrote:
>
>> Scala 2.12.7 doesn't compile on Java 17, see
>> https://issues.apache.org/jira/browse/FLINK-25000.
>>
>> On Thu, Apr 27, 2023 at 3:11 PM Jing Ge <j...@ververica.com> wrote:
>>
>> > Thanks Tamir for the information. According to the latest comment of the
>> > task FLINK-24998, this bug should be gone while using the latest JDK
>> 17. I
>> > was wondering whether it means that there are no more issues to stop us
>> > releasing a major Flink version to support Java 17? Did I miss
>> something?
>> >
>> > Best regards,
>> > Jing
>> >
>> > On Thu, Apr 27, 2023 at 8:18 AM Tamir Sagi <tamir.s...@niceactimize.com
>> >
>> > wrote:
>> >
>> >> More details about the JDK bug here
>> >> https://bugs.openjdk.org/browse/JDK-8277529
>> >>
>> >> Related Jira ticket
>> >> https://issues.apache.org/jira/browse/FLINK-24998
>> >>
>> >> ------------------------------
>> >> *From:* Jing Ge via user <user@flink.apache.org>
>> >> *Sent:* Monday, April 24, 2023 11:15 PM
>> >> *To:* Chesnay Schepler <ches...@apache.org>
>> >> *Cc:* Piotr Nowojski <pnowoj...@apache.org>; Alexis Sarda-Espinosa <
>> >> sarda.espin...@gmail.com>; Martijn Visser <martijnvis...@apache.org>;
>> >> d...@flink.apache.org <d...@flink.apache.org>; user <
>> user@flink.apache.org>
>> >> *Subject:* Re: [Discussion] - Release major Flink version to support
>> JDK
>> >> 17 (LTS)
>> >>
>> >>
>> >> *EXTERNAL EMAIL*
>> >>
>> >>
>> >> Thanks Chesnay for working on this. Would you like to share more info
>> >> about the JDK bug?
>> >>
>> >> Best regards,
>> >> Jing
>> >>
>> >> On Mon, Apr 24, 2023 at 11:39 AM Chesnay Schepler <ches...@apache.org>
>> >> wrote:
>> >>
>> >> As it turns out Kryo isn't a blocker; we ran into a JDK bug.
>> >>
>> >> On 31/03/2023 08:57, Chesnay Schepler wrote:
>> >>
>> >>
>> >>
>> https://github.com/EsotericSoftware/kryo/wiki/Migration-to-v5#migration-guide
>> >>
>> >> Kroy themselves state that v5 likely can't read v2 data.
>> >>
>> >> However, both versions can be on the classpath without classpath as v5
>> >> offers a versioned artifact that includes the version in the package.
>> >>
>> >> It probably wouldn't be difficult to migrate a savepoint to Kryo v5,
>> >> purely from a read/write perspective.
>> >>
>> >> The bigger question is how we expose this new Kryo version in the API.
>> If
>> >> we stick to the versioned jar we need to either duplicate all current
>> >> Kryo-related APIs or find a better way to integrate other serialization
>> >> stacks.
>> >> On 30/03/2023 17:50, Piotr Nowojski wrote:
>> >>
>> >> Hey,
>> >>
>> >> > 1. The Flink community agrees that we upgrade Kryo to a later
>> version,
>> >> which means breaking all checkpoint/savepoint compatibility and
>> releasing a
>> >> Flink 2.0 with Java 17 support added and Java 8 and Flink Scala API
>> support
>> >> dropped. This is probably the quickest way, but would still mean that
>> we
>> >> expose Kryo in the Flink APIs, which is the main reason why we haven't
>> been
>> >> able to upgrade Kryo at all.
>> >>
>> >> This sounds pretty bad to me.
>> >>
>> >> Has anyone looked into what it would take to provide a smooth migration
>> >> from Kryo2 -> Kryo5?
>> >>
>> >> Best,
>> >> Piotrek
>> >>
>> >> czw., 30 mar 2023 o 16:54 Alexis Sarda-Espinosa <
>> sarda.espin...@gmail.com>
>> >> napisał(a):
>> >>
>> >> Hi Martijn,
>> >>
>> >> just to be sure, if all state-related classes use a POJO serializer,
>> Kryo
>> >> will never come into play, right? Given FLINK-16686 [1], I wonder how
>> many
>> >> users actually have jobs with Kryo and RocksDB, but even if there
>> aren't
>> >> many, that still leaves those who don't use RocksDB for
>> >> checkpoints/savepoints.
>> >>
>> >> If Kryo were to stay in the Flink APIs in v1.X, is it impossible to let
>> >> users choose between v2/v5 jars by separating them like log4j2 jars?
>> >>
>> >> [1] https://issues.apache.org/jira/browse/FLINK-16686
>> >>
>> >> Regards,
>> >> Alexis.
>> >>
>> >> Am Do., 30. März 2023 um 14:26 Uhr schrieb Martijn Visser <
>> >> martijnvis...@apache.org>:
>> >>
>> >> Hi all,
>> >>
>> >> I also saw a thread on this topic from Clayton Wohl [1] on this topic,
>> >> which I'm including in this discussion thread to avoid that it gets
>> lost.
>> >>
>> >> From my perspective, there's two main ways to get to Java 17:
>> >>
>> >> 1. The Flink community agrees that we upgrade Kryo to a later version,
>> >> which means breaking all checkpoint/savepoint compatibility and
>> releasing a
>> >> Flink 2.0 with Java 17 support added and Java 8 and Flink Scala API
>> support
>> >> dropped. This is probably the quickest way, but would still mean that
>> we
>> >> expose Kryo in the Flink APIs, which is the main reason why we haven't
>> been
>> >> able to upgrade Kryo at all.
>> >> 2. There's a contributor who makes a contribution that bumps Kryo, but
>> >> either a) automagically reads in all old checkpoints/savepoints in
>> using
>> >> Kryo v2 and writes them to new snapshots using Kryo v5 (like is
>> mentioned
>> >> in the Kryo migration guide [2][3] or b) provides an offline tool that
>> >> allows users that are interested in migrating their snapshots manually
>> >> before starting from a newer version. That potentially could prevent
>> the
>> >> need to introduce a new Flink major version. In both scenarios,
>> ideally the
>> >> contributor would also help with avoiding the exposure of Kryo so that
>> we
>> >> will be in a better shape in the future.
>> >>
>> >> It would be good to get the opinion of the community for either of
>> these
>> >> two options, or potentially for another one that I haven't mentioned.
>> If it
>> >> appears that there's an overall agreement on the direction, I would
>> propose
>> >> that a FLIP gets created which describes the entire process.
>> >>
>> >> Looking forward to the thoughts of others, including the Users
>> (therefore
>> >> including the User ML).
>> >>
>> >> Best regards,
>> >>
>> >> Martijn
>> >>
>> >> [1]  https://lists.apache.org/thread/qcw8wy9dv8szxx9bh49nz7jnth22p1v2
>> >> [2] https://lists.apache.org/thread/gv49jfkhmbshxdvzzozh017ntkst3sgq
>> >> [3] https://github.com/EsotericSoftware/kryo/wiki/Migration-to-v5
>> >>
>> >> On Sun, Mar 19, 2023 at 8:16 AM Tamir Sagi <
>> tamir.s...@niceactimize.com>
>> >> wrote:
>> >>
>> >> I agree, there are several options to mitigate the migration from v2 to
>> >> v5.
>> >> yet, Oracle roadmap is to end JDK 11 support in September this year.
>> >>
>> >>
>> >>
>> >> ________________________________
>> >> From: ConradJam <jam.gz...@gmail.com>
>> >> Sent: Thursday, March 16, 2023 4:36 AM
>> >> To: d...@flink.apache.org <d...@flink.apache.org>
>> >> Subject: Re: [Discussion] - Release major Flink version to support JDK
>> 17
>> >> (LTS)
>> >>
>> >> EXTERNAL EMAIL
>> >>
>> >>
>> >>
>> >> Thanks for your start this discuss
>> >>
>> >>
>> >> I have been tracking this problem for a long time, until I saw a
>> >> conversation in ISSUSE a few days ago and learned that the Kryo version
>> >> problem will affect the JDK17 compilation of snapshots [1] FLINK-24998
>> ,
>> >>
>> >> As @cherry said it ruined our whole effort towards JDK17
>> >>
>> >> I am in favor of providing an external tool to migrate from Kryo old
>> >> version checkpoint to the new Kryo new checkpoint at one time (Maybe
>> this
>> >> tool start in flink 2.0 ?), does this tool currently have any plans or
>> >> ideas worth discuss
>> >>
>> >>
>> >> I think it should not be difficult to be compatible with JDK11 and
>> JDK17.
>> >> We should indeed abandon JDK8 in 2.0.0. It is also mentioned in the doc
>> >> that it is marked as Deprecated [2]
>> >>
>> >>
>> >> Here I add that we need to pay attention to the version of Scala and
>> the
>> >> version of JDK17
>> >>
>> >>
>> >> [1] FLINK-24998  IGSEGV in Kryo / C2 CompilerThread on Java 17
>> >> https://issues.apache.org/jira/browse/FLINK-24998
>> >>
>> >> [2] FLINK-30501 Update Flink build instruction to deprecate Java 8
>> instead
>> >> of requiring Java 11
>> https://issues.apache.org/jira/browse/FLINK-30501
>> >>
>> >> Tamir Sagi <tamir.s...@niceactimize.com> 于2023年3月16日周四 00:54写道:
>> >>
>> >> > Hey dev community,
>> >> >
>> >> > I'm writing this email to kick off a discussion following this epic:
>> >> > FLINK-15736<https://issues.apache.org/jira/browse/FLINK-15736>.
>> >> >
>> >> > We are moving towards JDK 17 (LTS) , the only blocker now is Flink
>> which
>> >> > currently remains on JDK 11 (LTS). Flink does not support JDK 17 yet,
>> >> with
>> >> > no timeline,  the reason, based on the aforementioned ticket is the
>> >> > following tickets
>> >> >
>> >> >   1.  FLINK-24998 - SIGSEGV in Kryo / C2 CompilerThread on Java 17<
>> >> > https://issues.apache.org/jira/browse/FLINK-24998>.
>> >> >   2.  FLINK-3154 - Update Kryo version from 2.24.0 to latest Kryo LTS
>> >> > version<https://issues.apache.org/jira/browse/FLINK-3154>
>> >> >
>> >> > My question is whether it is possible to release a major version
>> (Flink
>> >> > 2.0.0) using the latest Kryo version for those who don't need to
>> restore
>> >> > old savepoints/checkpoints in newer format.
>> >> >
>> >> >   1.  Leverage JDK 17 features within JVM
>> >> >   2.  Moving from the old format to the newer one will be handled
>> only
>> >> > once - a mitigation can be achieved by a conversion tool or external
>> >> > serializers, both can be provided later on.
>> >> >
>> >> > I'd like to emphasize that the next JDK LTS (21) will be released
>> this
>> >> > September.  furthermore, Flink already supports JDK 12-15, which is
>> very
>> >> > close to JDK 17 (LTS) - that was released in September 2021.  JDK 11
>> >> will
>> >> > become a legacy soon, as more frameworks moving towards JDK 17 and
>> are
>> >> less
>> >> > likely to support JDK 11 in the near future. (For example, Spring
>> Boot 3
>> >> > requires JDK 17 already).
>> >> >
>> >> > Thank you for your consideration of my request.
>> >> >
>> >> > Tamir.
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > Confidentiality: This communication and any attachments are intended
>> for
>> >> > the above-named persons only and may be confidential and/or legally
>> >> > privileged. Any opinions expressed in this communication are not
>> >> > necessarily those of NICE Actimize. If this communication has come to
>> >> you
>> >> > in error you must take no action based on it, nor must you copy or
>> show
>> >> it
>> >> > to anyone; please delete/destroy and inform the sender by e-mail
>> >> > immediately.
>> >> > Monitoring: NICE Actimize may monitor incoming and outgoing e-mails.
>> >> > Viruses: Although we have taken steps toward ensuring that this
>> e-mail
>> >> and
>> >> > attachments are free from any virus, we advise that in keeping with
>> good
>> >> > computing practice the recipient should ensure they are actually
>> virus
>> >> free.
>> >> >
>> >>
>> >>
>> >> --
>> >> Best
>> >>
>> >> ConradJam
>> >>
>> >> Confidentiality: This communication and any attachments are intended
>> for
>> >> the above-named persons only and may be confidential and/or legally
>> >> privileged. Any opinions expressed in this communication are not
>> >> necessarily those of NICE Actimize. If this communication has come to
>> you
>> >> in error you must take no action based on it, nor must you copy or
>> show it
>> >> to anyone; please delete/destroy and inform the sender by e-mail
>> >> immediately.
>> >> Monitoring: NICE Actimize may monitor incoming and outgoing e-mails.
>> >> Viruses: Although we have taken steps toward ensuring that this e-mail
>> >> and attachments are free from any virus, we advise that in keeping with
>> >> good computing practice the recipient should ensure they are actually
>> virus
>> >> free.
>> >>
>> >>
>> >>
>> >>
>> >> Confidentiality: This communication and any attachments are intended
>> for
>> >> the above-named persons only and may be confidential and/or legally
>> >> privileged. Any opinions expressed in this communication are not
>> >> necessarily those of NICE Actimize. If this communication has come to
>> you
>> >> in error you must take no action based on it, nor must you copy or
>> show it
>> >> to anyone; please delete/destroy and inform the sender by e-mail
>> >> immediately.
>> >> Monitoring: NICE Actimize may monitor incoming and outgoing e-mails.
>> >> Viruses: Although we have taken steps toward ensuring that this e-mail
>> >> and attachments are free from any virus, we advise that in keeping with
>> >> good computing practice the recipient should ensure they are actually
>> virus
>> >> free.
>> >>
>> >
>>
>
>

Reply via email to