[ https://issues.apache.org/jira/browse/CALCITE-6161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17794898#comment-17794898 ]
Mingcan Wang commented on CALCITE-6161: --------------------------------------- [~julianhyde] Yes, you're right. I just forgot the case of unsolved function compared to resolved function. They can just compare names.But wouldn’t that be a bit subjective? I actually saw the comment above my change. I may not have fully understood the meaning of unresovled at that time.But just comparing names does lead to incorrectness in some cases. I agree It should check the operator itself. I'll think about it again > The equalsDeep of sqlCall should compare sqlOperator's sqlKind > -------------------------------------------------------------- > > Key: CALCITE-6161 > URL: https://issues.apache.org/jira/browse/CALCITE-6161 > Project: Calcite > Issue Type: Bug > Components: core > Affects Versions: 1.36.0 > Reporter: Mingcan Wang > Assignee: Mingcan Wang > Priority: Minor > Labels: pull-request-available > Fix For: 1.37.0 > > > Here is the situation: > when I create two SqlBasicCalls, one uses UNARY_MINUS operator and the other > uses MINUS operator. But their operandList is the same. However, The result > after calling their equalsDeep() method is true. > I found that the sqlKind of many operators is reused, and the name is not > guaranteed to be unique. Only the combination of kind and name can determine > the unique operator. -- This message was sent by Atlassian Jira (v8.20.10#820010)