Tzu-Li (Gordon) Tai created FLINK-8836: ------------------------------------------
Summary: Duplicating a KryoSerializer does not duplicate registered default serializers Key: FLINK-8836 URL: https://issues.apache.org/jira/browse/FLINK-8836 Project: Flink Issue Type: Bug Components: Type Serialization System Reporter: Tzu-Li (Gordon) Tai The {{duplicate()}} method of the {{KryoSerializer}} is as following: {code} public KryoSerializer<T> duplicate() { return new KryoSerializer<>(this); } protected KryoSerializer(KryoSerializer<T> toCopy) { defaultSerializers = toCopy.defaultSerializers; defaultSerializerClasses = toCopy.defaultSerializerClasses; kryoRegistrations = toCopy.kryoRegistrations; ... } {code} Shortly put, when duplicating a `KryoSerializer`, the `defaultSerializers` serializer instances are directly provided to the new `KryoSerializer` instance. This causes the fact that those default serializers are shared across two different `KryoSerializer` instances, and therefore not a correct duplicate. -- This message was sent by Atlassian JIRA (v7.6.3#76005)