[
https://issues.apache.org/jira/browse/FLINK-37546?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Zakelly Lan updated FLINK-37546:
--------------------------------
Fix Version/s: (was: 2.0.1)
> KryoSerializer breaks without Twitter Chill library
> ---------------------------------------------------
>
> Key: FLINK-37546
> URL: https://issues.apache.org/jira/browse/FLINK-37546
> Project: Flink
> Issue Type: Bug
> Components: API / Type Serialization System
> Affects Versions: 2.0.0
> Reporter: Maximilian Michels
> Assignee: Maximilian Michels
> Priority: Major
> Labels: pull-request-available
>
> KryoSerializer loads
> [FlinkScalaKryoInstantiator|https://github.com/apache/flink/blob/cc017da9ae12ea58d473d730a84d39440ef928a3/flink-table/flink-table-api-scala/src/main/scala/org/apache/flink/table/api/runtime/types/FlinkScalaKryoInstantiator.scala#L62]
> via
> [Reflection|https://github.com/apache/flink/blob/cc017da9ae12ea58d473d730a84d39440ef928a3/flink-core/src/main/java/org/apache/flink/api/java/typeutils/runtime/kryo/KryoSerializer.java#L472]
> which configures Kryo to use StdInstantiatorStrategy. After FLINK-3154
> removed the Twitter Chill library, this breaks various types. See
> [https://github.com/EsotericSoftware/kryo/issues/1173]
> At first, it seemed that the Kryo update caused this but I can reproduce this
> also with Kryo 2.24.0 with the Chill library removed.
> The fix is to use DefaultInstantiatorStrategy, possible with
> StdIstantiatorStrategy as a fallback, e.g.:
> {noformat}
> Kryo.DefaultInstantiatorStrategy initStrategy = new
> Kryo.DefaultInstantiatorStrategy();
> initStrategy.setFallbackInstantiatorStrategy(new StdInstantiatorStrategy());
> kryo.setStrategy(initStrategy);
> {noformat}
> Of course, we need to test what other implications this has, but it seems
> this would be a new sensible default.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)