Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
None
-
None
Description
CALCITE-5747 introduced some BigQuery-specific logic for FLOOR and CEIL that is keyed off the conformance being SqlConformanceEnum.BIG_QUERY. However, it was implemented in such a way that implementations of SqlConformance that are not SqlConformanceEnum would throw ClassCastException, due to this line in Parser.jj:
SqlOperator op = SqlStdOperatorTable.floorCeil(floorFlag, (SqlConformanceEnum) this.conformance);
Better would be to pass this.conformance without casting, and adjust SqlStdOperatorTable.floorCeil to handle any kind of conformance.
This affects us in Apache Druid land, because we have a conformance that extends SqlAbstractConformance.
Attachments
Issue Links
- is caused by
-
CALCITE-5747 Conflicting FLOOR return type between Calcite and BigQuery
- Closed
- links to