[ https://issues.apache.org/jira/browse/HIVE-16945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16094549#comment-16094549 ]
Jesus Camacho Rodriguez commented on HIVE-16945: ------------------------------------------------ [~lirui], thanks for the feedback. I had not started working on this issue yet, I created the placeholder to keep it in mind. I guess overriding equals/hashCode would create a bunch of issues since codebase has relied on identity comparison for this objects, thus I would create a new method indeed. I agree with you that {{compareTo}} is not a good name for it, {{logicalEquals}} would be better. I have changed it in the description. > Add method to compare Operators > -------------------------------- > > Key: HIVE-16945 > URL: https://issues.apache.org/jira/browse/HIVE-16945 > Project: Hive > Issue Type: Improvement > Components: Operators > Affects Versions: 3.0.0 > Reporter: Jesus Camacho Rodriguez > > HIVE-10844 introduced a comparator factory class for operators that > encapsulates all the logic to assess whether two operators are equal: > https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/optimizer/OperatorComparatorFactory.java > The current design might create problems as any change in fields of operators > will break the comparators. It would be better to do this via inheritance > from Operator base class, by adding a {{compareTo(Operator other)}} method. -- This message was sent by Atlassian JIRA (v6.4.14#64029)