Details
-
Improvement
-
Status: In Progress
-
Major
-
Resolution: Unresolved
-
1.30.0
-
None
-
None
Description
As discussed in CALCITE-5118, SqlOperator#rewriteCall is done before validation, which is hard to give accurate validation messages. We prefer to use SqlRexConvertlet to do this work, hence we can make the validation error more accurate, and does not give more burden to the optimization phase.
We should deprecate SqlOperator#rewriteCall, and move these rewriting logic to SqlRexConvertlet.
Currently, SqlCoalesceFunction, SqlDatePartFunction, SqlJdbcFunctionCall, SqlNewOperator, SqlNullifFunction, SqlProcedureCallOperator used this mechanism, we should handle these functions in this issue.
Attachments
Issue Links
- relates to
-
CALCITE-5118 SqlDatePartFunction#rewriteCall should check operands length
- Closed