Compatibility is really important for checkpointed state.
For that, you can always directly specify GenericTypeInfo or AvroTypeInfo
if you want to continue to treat a type via Kryo or Avro.

Alternatively, once https://issues.apache.org/jira/browse/FLINK-11917 is
implemented, this should happen automatically.

On Tue, Mar 26, 2019 at 8:33 AM Yun Tang <myas...@live.com> wrote:

> Hi Stephan
>
> I prefer to remove 'enableForceKryo' since Kryo serializer does not work
> out-of-the-box well for schema evolution stories due to its mutable
> properties, and our built-in POJO serializer has already supported schema
> evolution.
>
> On the other hand, what's the backward compatibility plan for
> enableForceAvro() and enableForceKryo()?  I think if
> https://issues.apache.org/jira/browse/FLINK-11917 merged, we could
> support to migrate state which was POJO but serialized using Kryo.
>
> Best
> Yun Tang
> ------------------------------
> *From:* Stephan Ewen <se...@apache.org>
> *Sent:* Tuesday, March 26, 2019 2:31
> *To:* dev; user
> *Subject:* [DISCUSS] Remove forceAvro() and forceKryo() from the
> ExecutionConfig
>
> Hi all!
>
> The ExecutionConfig has some very old settings: forceAvro() and
> forceKryo(), which are actually misleadingly named. They cause POJOs to use
> Avro or Kryo rather than the POJO serializer.
>
> I think we do not have a good case any more to use Avro for POJOs. POJOs
> that are also Avro types go through the Avro serializer anyways.
>
> There may be a case to use Kryo for POJOs if you don't like the Flink POJO
> serializer.
>
> I would suggest to remove the "forceAvro()" option completely.
> For "forceKryo()", I am torn between removing it completely or renaming it
> to "setUseKryoForPOJOs()".
>
> What are the opinion on that out there?
>
> Best,
> Stephan
>
>

Reply via email to