You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Till Rohrmann (JIRA)" <ji...@apache.org> on 2018/11/18 12:44:12 UTC

[jira] [Updated] (FLINK-9798) Drop canEqual() from TypeInformation, TypeSerializer, etc.

     [ https://issues.apache.org/jira/browse/FLINK-9798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Till Rohrmann updated FLINK-9798:
---------------------------------
    Fix Version/s: 1.8.0

> Drop canEqual() from TypeInformation, TypeSerializer, etc.
> ----------------------------------------------------------
>
>                 Key: FLINK-9798
>                 URL: https://issues.apache.org/jira/browse/FLINK-9798
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Core, Type Serialization System
>            Reporter: Aljoscha Krettek
>            Assignee: Aljoscha Krettek
>            Priority: Major
>             Fix For: 1.7.0, 1.8.0
>
>
> See discussion from https://lists.apache.org/thread.html/7cc6cfd66e96e8d33c768629b55481b6c951c68128f10256abb328fe@%3Cdev.flink.apache.org%3E
> {quote}
> Hi all!
> As part of an attempt to simplify some code in the TypeInfo and
> TypeSerializer area, I would like to drop the "canEqual" methods for the
> following reason:
> "canEqual()" is necessary to make proper equality checks across hierarchies
> of types. This is for example useful in a collection API, stating for
> example whether a List can be equal to a Collection if they have the same
> contents. We don't have that here.
> A certain type information (and serializer) is equal to another one if they
> describe the same type, strictly. There is no necessity for cross hierarchy
> checks.
> This has also let to the situation that most type infos and serializers
> implement just a dummy/default version of "canEqual". Many "equals()"
> methods do not even call the other object's "canEqual", etc.
> As a first step, we could simply deprecate the method and implement an
> empty default, and remove all calls to that method.
> Best,
> Stephan
> {quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)