Gian Merlino created CALCITE-5479:
-------------------------------------
Summary: Restore consistent handling of iFormalOperand in sequence
checkers
Key: CALCITE-5479
URL: https://issues.apache.org/jira/browse/CALCITE-5479
Project: Calcite
Issue Type: Bug
Reporter: Gian Merlino
Handling for {{OperandTypes.sequence}} changed in
[33f4ab40bbee26e06209061c35a422f2f1e05371|https://github.com/apache/calcite/commit/33f4ab40bbee26e06209061c35a422f2f1e05371#diff-b0b8d58a792b8e60b9e97717912aecfc6695536f5026ac4d5231d14e34b91566L303-R316]
such that {{iFormalOperand}} passed to subcheckers is no longer always zero,
but is instead:
- Zero if the subchecker is {{FamilyOperandTypeChecker}}.
- Otherwise, the operand number in the overall sequence.
It causes problems for the way we're using sequence checkers in Druid, since we
don't always use {{FamilyOperandTypeChecker}}, but we _do_ assume the old
behavior: that {{iFormalOperand}} is always zero, and therefore we can put any
checker into the sequence without it being "aware" that it is in a sequence.
I marked this as a bug in case this change was made accidentally. If it was
made for a reason, please let me know. Thanks.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)