[ https://issues.apache.org/jira/browse/FLINK-9798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aljoscha Krettek updated FLINK-9798: ------------------------------------ Issue Type: Sub-task (was: Improvement) Parent: FLINK-3957 > 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.6.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)