Hi Guenther, I think it's safe to use legacy mode in your case, because the RowKind is never used in the old planner.
Hi Till, It seems that the cross-major-version state incompatibility is not documented. I created FLINK-20823 to update the documentation. Best, Jark On Thu, 31 Dec 2020 at 08:14, Guenther Starnberger <fl...@sysfrog.org> wrote: > On Wed, Dec 30, 2020 at 11:21 AM Jark Wu <imj...@gmail.com> wrote: > > Jark, > > > If you are using the old planner in 1.9, and using the old planner in > 1.11, > > then a state migration is > > needed because of the new added RowKind field. This is documented in the > > 1.11 release note [1]. > > Yes - that's exactly the setup that we're using. Both versions > currently use the old planner and state migration fails due to the > "The new key serializer must be compatible" error. > > For testing I tried to patch the Flink source and to force usage of > (only) the legacy mode in the RowSerializer (so that the state doesn't > need to be migrated) and this seems to work. However, I'm not sure if > this has any unintended side-effects so it seems that rebuilding the > state is a much safer and more maintainable approach. > > - Guenther >