[ https://issues.apache.org/jira/browse/FLINK-8139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16265244#comment-16265244 ]
ASF GitHub Bot commented on FLINK-8139: --------------------------------------- Github user fhueske commented on the issue: https://github.com/apache/flink/pull/5065 Hi @Aegeaner, thanks for the pull request. I had a brief look at it and noticed a few things: 1. Please fill out the PR template (see #5063 as an example) 2. Please add unit tests that validate that the checks you added are working correctly. 3. Please update the `equals()` and `hashCode()` methods of `Row` as mentioned in the JIRA issue. Thank you, Fabian > Check for proper equals() and hashCode() when registering a table > ----------------------------------------------------------------- > > Key: FLINK-8139 > URL: https://issues.apache.org/jira/browse/FLINK-8139 > Project: Flink > Issue Type: Improvement > Components: Table API & SQL > Reporter: Timo Walther > Assignee: Aegeaner > > In the current Table API & SQL implementation we compare {{Row}}s at > different positions. E.g., for joining we test rows for equality or put them > into state. A heap state backend requires proper hashCode() and equals() in > order to work correct. Thus, every type in the Table API needs to have these > methods implemented. > We need to check if all fields of a row have implement methods that differ > from {{Object.equals()}} and {{Object.hashCode()}} via reflections. Both > coming from TableSource and DataStream/DataSet. > Additionally, for array types, the {{Row}} class should use > {{Arrays.deepEquals()}} and {{Arrays.deepHashCode()}} instead of the non-deep > variants. -- This message was sent by Atlassian JIRA (v6.4.14#64029)