mihaibudiu commented on code in PR #4858:
URL: https://github.com/apache/calcite/pull/4858#discussion_r3068128680
##########
core/src/test/java/org/apache/calcite/test/SqlValidatorTest.java:
##########
@@ -8104,15 +8144,28 @@ void testGroupExpressionEquivalenceParams() {
+ " overlaps (date '1-2-3', date '1-2-3')^\n"
+ "or false")
.fails("(?s).*Cannot apply 'OVERLAPS' to arguments of type .*");
- // row with 3 arguments as right argument to overlaps
+ // row with 3 arguments as right argument to overlaps.
+ // validateValues checks ROW structure before OVERLAPS validates,
+ // producing "Unequal number of entries in ROW expressions".
+ // SELECT produces the same error.
+ sql("select true or"
+ + " (date '1-2-3', date '1-2-3')"
+ + " overlaps ^(date '1-2-3', date '1-2-3', date '1-2-3')^"
+ + " or false from (values (0)) as t(x)")
+ .fails("(?s).*Unequal number of entries in ROW expressions.*");
expr("true\n"
- + "or ^(date '1-2-3', date '1-2-3')\n"
- + " overlaps (date '1-2-3', date '1-2-3', date '1-2-3')^\n"
+ + "or (date '1-2-3', date '1-2-3')\n"
+ + " overlaps ^(date '1-2-3', date '1-2-3', date '1-2-3')^\n"
+ "or false")
- .fails("(?s).*Cannot apply 'OVERLAPS' to arguments of type .*");
- expr("^period (date '1-2-3', date '1-2-3')\n"
- + " overlaps (date '1-2-3', date '1-2-3', date '1-2-3')^")
- .fails("(?s).*Cannot apply 'OVERLAPS' to arguments of type .*");
+ .fails("(?s).*Unequal number of entries in ROW expressions.*");
Review Comment:
Do you know why no checks were run in CI?
I would expect this error using ROW to appear in many more cases.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]