Zoltan Haindrich created CALCITE-2842: -----------------------------------------
Summary: Computing digest of IN expressions leads to Exceptions Key: CALCITE-2842 URL: https://issues.apache.org/jira/browse/CALCITE-2842 Project: Calcite Issue Type: Bug Reporter: Zoltan Haindrich Assignee: Julian Hyde Testcase: {code} /* RexProgramTest */ @Test public void testInDigest() { RexNode e = in(vInt(), literal(1), literal(2)); assertThat(e.toString(), is("IN(?0.int0, 1, 2)")); } /* RexProgramBuilder */ protected RexNode in(Iterable<? extends RexNode> nodes) { return rexBuilder.makeCall(SqlStdOperatorTable.IN, ImmutableList.copyOf(nodes)); } {code} The exception is due to that it tries to look at the other operand https://github.com/apache/calcite/blob/883666929478aabe07ee5b9e572c43a6f1a703e2/core/src/main/java/org/apache/calcite/rex/RexCall.java#L115 [SIMPLE_BINARY_OPS|https://github.com/apache/calcite/blob/883666929478aabe07ee5b9e572c43a6f1a703e2/core/src/main/java/org/apache/calcite/rex/RexCall.java#L64] contains [COMPARISION|https://github.com/apache/calcite/blob/883666929478aabe07ee5b9e572c43a6f1a703e2/core/src/main/java/org/apache/calcite/sql/SqlKind.java#L1248] which also contains "IN" this was introduced in CALCITE-2454 a few days ago; bug not released -- This message was sent by Atlassian JIRA (v7.6.3#76005)