+1 for keeping Flink 1.20 as the LTS version. I have two questions I'd like to get the community's thoughts on:
1. Should we skip Flink 2.2 and jump directly to 2.3? If we drop 2.2 and go straight to 2.3, users currently on Iceberg 1.11 + Flink 2.0 will face a difficult upgrade path when moving to Iceberg 1.12. Since the supported matrix would only be 1.20, 2.1, and 2.3, they would be forced to upgrade Flink from 2.0 directly to 2.1 while also upgrading Iceberg — having to perform two major upgrades simultaneously would be quite painful for users. Would it be feasible to support 4 Flink versions in this case as a compromise? 2. Documentation for feature compatibility across Flink versions: Some newer features, such as the Variant type, are not supported on Flink 1.20. If we commit to maintaining Flink 1.20 support for the long term, we should clearly document which features are unavailable on older Flink versions, so users can make informed decisions when choosing their version combinations. Thanks GuoYu! Maximilian Michels <[email protected]> 于2026年5月29日周五 05:20写道: > +1 for Steven's suggestion to target the LTS + two latest Flink releases. > > >My previous experience suggests that during upgrades it is usually better > to change only one thing at a time. > > @Peter Not optimal, but if we skipped newer Flink versions to preserve > the older versions, what do we tell users of newer Flink versions? > Ideally, we would retain support for a given Flink version throughout > Iceberg releases for as long as possible, but we have to strike a > balance. That said, we could start supporting more than three Flink > versions. In that case we need to tune the build matrix a bit, to > prevent building all Flink versions for every change. I just noticed > that we always build and test all the versions, even if we do not > touch files for an older Flink version. > > I wonder whether we could support older Flink versions a bit more > compact, e.g. using a diff against the latest Flink version. The copy > approach is a bit error-prone and hard to review. The actual changes > between Flink versions are usually small. > > -Max > > On Wed, May 27, 2026 at 7:29 AM Péter Váry <[email protected]> > wrote: > > > > I have some concerns, that with the proposed new support matrix forces > users to upgrade Flink and Iceberg versions at the same time. > > > > My previous experience suggests that during upgrades it is usually > better to change only one thing at a time. > > > > Do others share my concerns? > > > > > > On Wed, May 27, 2026, 02:42 Steven Wu <[email protected]> wrote: > >> > >> Talat, thanks for working on the 2.2 support. > >> > >> Please follow the previous PR regarding the version upgrade. Similarly, > we want 4 or 5 commits that should be preserved via `Rebase and merge` > >> https://github.com/apache/iceberg/pull/13714/commits > >> > >> > >> > >> On Tue, May 26, 2026 at 5:26 PM Talat Uyarer via dev < > [email protected]> wrote: > >>> > >>> Thank you, Steve, for the discussion email. It was my initial thought > as well to keep Flink 1.20, as the transition from 1.20 to 2.0 represents a > significant change for the Flink ecosystem. > >>> > >>> If there are no objections, I will create a PR to drop Flink 2.0 > support and add Flink 2.2 instead. I previously opened a 2.2 PR before the > recent Iceberg 1.11.0 release ( > https://github.com/apache/iceberg/pull/15476), so I will rebase and > refresh that work. > >>> > >>> > >>> On Tue, May 26, 2026 at 8:57 AM Kevin Liu <[email protected]> > wrote: > >>>> > >>>> > 1.12.0: support Flink 1.20, 2.2, 2.3 > >>>> > >>>> That makes sense. I think it's a good idea to have an > iceberg-flink-runtime for each Flink release, even if it's only for 1 > Iceberg release. > >>>> > >>>> We should also update the Multi-engine support - Flink [1] page and > mark them as "Deprecated". I think many users use that page for the source > of truth. > >>>> > >>>> [1] https://iceberg.apache.org/multi-engine-support/#apache-flink > >>>> > >>>> > >>>> > >>>> On Tue, May 26, 2026 at 7:15 AM Steven Wu <[email protected]> > wrote: > >>>>> > >>>>> Jacky, thanks a lot for sharing the observations. > >>>>> > >>>>> I agree with prioritizing support for Flink 2.2.0. With Flink 2.3.0 > release coming soon (most likely before the next Iceberg 1.12.0), I propose > dropping the support for 2.1.0 when adding 2.3.0. > >>>>> > >>>>> So here is the revised support matrix. > >>>>> 1.11.0: support Flink 1.20, 2.0, 2.1 > >>>>> 1.12.0: support Flink 1.20, 2.2, 2.3 > >>>>> > >>>>> Iceberg 1.12.0 would likely be 2-3 months away following our > targeted regular cadence. > >>>>> > >>>>> > >>>>> On Tue, May 26, 2026 at 12:11 AM Jacky Lee <[email protected]> > wrote: > >>>>>> > >>>>>> +1 for retaining Flink 1.20 support. > >>>>>> > >>>>>> Regarding whether to skip 2.2.0 and jump directly to 2.3.0, I'd > like to share some observations from the Flink ecosystem side that may be > useful for this discussion. > >>>>>> > >>>>>> Our team has been working on a Flink version upgrade recently, and > during this process we noticed the following: the Flink Connector community > is currently maintaining primarily 2.0.0 and 2.2.0, while 2.1.0 has > effectively been skipped and is not part of the connector's mainstream > support matrix. As for 2.3.0, it has not yet been officially released, so > integration work cannot proceed at this stage. > >>>>>> > >>>>>> In addition, I've discussed the version selection question with > several Flink PMC members, and the consistent recommendation has been to > skip 2.1.0 and adopt 2.2.0 directly. Looking at the Flink community's > current maintenance focus and user adoption, 2.2.0 clearly offers broader > ecosystem compatibility and stronger community support compared to 2.1.0. > >>>>>> > >>>>>> Based on the above, I'd lean toward the following approach: > >>>>>> > >>>>>> Prioritize support for Flink 2.2.0, aligning with the Flink > Connector community's mainline direction, so that users running Iceberg + > Flink can benefit from the most complete ecosystem support; > >>>>>> Track the 2.3.0 release in parallel, and move forward with > integration once it is officially released — this can be planned as a > follow-up milestone; > >>>>>> Defer 2.1.0 support for now, to avoid spreading maintenance > resources too thin. > >>>>>> > >>>>>> > >>>>>> That said, the final decision should still factor in Iceberg's > overall maintenance capacity and the actual needs of our user base. Looking > forward to hearing further thoughts from the community. > >>>>>> > >>>>>> > >>>>>> Steven Wu <[email protected]> 于2026年5月26日周二 14:03写道: > >>>>>>> > >>>>>>> Hi everyone, > >>>>>>> > >>>>>>> There is an ongoing discussion in PR #16517 about how we want to > manage Flink version support for the next release. > >>>>>>> > >>>>>>> > >>>>>>> The current PR proposes removing Flink 1.20 support now that > Iceberg 1.11.0 is out and Flink 2.1 support has been added. However, the PR > discussion raised a few broader questions that seem worth deciding on the > dev list. > >>>>>>> > >>>>>>> > >>>>>>> The main points raised so far are: > >>>>>>> > >>>>>>> Should we really drop Flink 1.20 next? Flink 1.20 is an LTS > release and has a longer support window. If we remove one older Flink > version, Flink 2.0 may be the better candidate to drop instead of 1.20. > >>>>>>> > >>>>>>> Which new Flink version should we add next? There was earlier work > for Flink 2.2, but because Iceberg 1.11.0 took a while to release and Flink > 2.3 is already out, it may be worth considering whether we should skip 2.2 > and move directly to 2.3 instead. > >>>>>>> > >>>>>>> > >>>>>>> My proposed approach would result in supporting versions 1.20, > 2.1, and 2.3 in the next Iceberg release:12.0 release. > >>>>>>> > >>>>>>> Keep Flink 1.20 for longer and drop Flink 2.0 instead. > >>>>>>> Jump directly to Flink 2.3 and skip 2.2. > >>>>>>> > >>>>>>> > >>>>>>> What do others think? > >>>>>>> > >>>>>>> > >>>>>>> Thanks, > >>>>>>> Steven > >>>>>>> > >>>>>>> >
