You should start a new discussion thread according to the FLIP guidelines,
so that it's identifiable that this is a FLIP discussion.

Gyula

On Thu, Dec 7, 2023 at 10:22 AM Gabor Somogyi <gabor.g.somo...@gmail.com>
wrote:

> Gyula, thanks for sharing your opinion.
> I've created a small FLIP as asked:
>
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-401%3A+REST+API+JSON+response+deserialization+unknown+field+tolerance
>
> Let's wait on voices until beginning of next week.
>
> G
>
>
> On Wed, Dec 6, 2023 at 11:05 AM Gyula Fóra <gyula.f...@gmail.com> wrote:
>
> > Thanks G, I think this is a reasonable proposal which will increase
> > compatibility between different Flink clients and versions such as SQL
> > Gateway, CLI, Flink operator etc.
> >
> > I don't really see any harm in ignoring unknown json fields globally, but
> > this probably warrants a FLIP and a proper vote.
> >
> > Cheers,
> > Gyula
> >
> > On Wed, Dec 6, 2023 at 10:53 AM Gabor Somogyi <gabor.g.somo...@gmail.com
> >
> > wrote:
> >
> > > Hi All,
> > >
> > > Since the possible solution can have effect on all the REST response
> > > deserialization I would like
> > > ask for opinions.
> > >
> > > *Problem statement:*
> > >
> > > At the moment Flink is not ignoring unknown fields when parsing REST
> > > responses. An example for such a class is JobDetailsInfo but this
> applies
> > > to all others. It would be good to add this support to increase
> > > compatibility.
> > >
> > > The real life use-case is when the Flink k8s operator wants to handle 2
> > > jobs with 2 different Flink versions where the newer version has added
> a
> > > new field to any REST response. Such case the operator has basically 2
> > > options:
> > > * Use the old Flink version -> Such case exception comes because new
> > field
> > > comes but it's not expected
> > > * Use the new Flink version -> Such case exception comes because new
> > field
> > > is not coming but expected
> > >
> > > To hack around this issue it requires quite some ugly code parts in the
> > > operator.
> > >
> > > The mentioned issue is tracked here:
> > > https://issues.apache.org/jira/browse/FLINK-33268
> > >
> > > *Proposed solution:*
> > >
> > > Ignore all unknown fields in case of REST response JSON
> deserialization.
> > > Important to know that strict serialization would stay the same as-is.
> > >
> > > Actual object mapper configuration can be found here:
> > >
> > >
> >
> https://github.com/apache/flink/blob/3060ccd49cc8d19634b431dbf0f09ac875d0d422/flink-runtime/src/main/java/org/apache/flink/runtime/rest/util/RestMapperUtils.java#L31-L38
> > >
> > > Please share your opinion on this topic.
> > >
> > > BR,
> > > G
> > >
> >
>

Reply via email to