[
https://issues.apache.org/jira/browse/FLINK-2637?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14768982#comment-14768982
]
ASF GitHub Bot commented on FLINK-2637:
---------------------------------------
Github user tillrohrmann commented on a diff in the pull request:
https://github.com/apache/flink/pull/1134#discussion_r39633196
--- Diff:
flink-java/src/main/java/org/apache/flink/api/java/typeutils/PojoField.java ---
@@ -68,4 +72,24 @@ private void readObject(ObjectInputStream in)
public String toString() {
return "PojoField " + field.getDeclaringClass() + "." +
field.getName() + " (" + type + ")";
}
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj instanceof PojoField) {
--- End diff --
You're right. Will refactor the public access to the fields and include the
field in the `equals` and `hashCode` calculation.
> Add abstract equals, hashCode and toString methods to TypeInformation
> ---------------------------------------------------------------------
>
> Key: FLINK-2637
> URL: https://issues.apache.org/jira/browse/FLINK-2637
> Project: Flink
> Issue Type: Improvement
> Components: Core
> Affects Versions: 0.9, 0.10
> Reporter: Fabian Hueske
> Assignee: Till Rohrmann
> Labels: starter
> Fix For: 0.10
>
>
> Flink expects that implementations of {{TypeInformation}} have valid
> implementations of {{hashCode}} and {{equals}}. However, the API does not
> enforce to implement these methods. Hence, this is a common origin for bugs
> such as for example FLINK-2633.
> This can be avoided by adding abstract {{hashCode}} and {{equals}} methods to
> TypeInformation. An abstract {{toString}} method could also be added.
> This change will brake the API and require to fix a couple of broken
> {{TypeInformation}} implementations.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)