[
https://issues.apache.org/jira/browse/CALCITE-1417?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde updated CALCITE-1417:
---------------------------------
Description: In CALCITE-1357 we added some logic (in
{{DruidDateTimeUtils.leafToRanges}}) to recognize various combinations of
literals, casts of literals and comparison operators, and I feel that logic
would be simpler if we moved the logic into {{RexUtil}} and flattened the casts
of literals to just plain literals. [~jcamachorodriguez], what do you think?
(was: A literal is a constant, and so a cast of a literal is also a constant,
but when we do constant reduction sometimes there are errors if the cast is not
valid. For example, the query
{code}
values cast('' as integer)
{code}
gives {{ExceptionInInitializerError}} and, to make matters worse, the Avatica
JDBC driver does not catch the exception (because it is a {{java.lang.Error}})
and wrap it as a {{java.sql.SQLException}} as it ought to.
Also, CALCITE-1357 added some logic (in {{DruidDateTimeUtils.leafToRanges}}) to
recognize various combinations of literals, casts of literals and comparison
operators, and I feel that logic would be simpler if we moved the logic into
{{RexUtil}} and flattened the casts of literals to just plain literals.
[~jcamachorodriguez], what do you think?)
> Casts of literals
> -----------------
>
> Key: CALCITE-1417
> URL: https://issues.apache.org/jira/browse/CALCITE-1417
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Assignee: Julian Hyde
>
> In CALCITE-1357 we added some logic (in {{DruidDateTimeUtils.leafToRanges}})
> to recognize various combinations of literals, casts of literals and
> comparison operators, and I feel that logic would be simpler if we moved the
> logic into {{RexUtil}} and flattened the casts of literals to just plain
> literals. [~jcamachorodriguez], what do you think?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)