[
https://issues.apache.org/jira/browse/CALCITE-1653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15880969#comment-15880969
]
Julian Hyde commented on CALCITE-1653:
--------------------------------------
I solved the problem of the null executor by adding {{executor}} as a field of
{{RelBuilder}}. It is populated first from the {{context}} (same place as
{{RelBuilder}} finds its various {{RelNode}} factories), second from the
{{RelNode}}'s planner, and if these are both null uses the default executor
{{RexUtil.EXECUTOR}}. So, we can safely assert that executor is never null in
{{simplify}}.
I am testing now, will check in shortly.
> Allow for custom RelOptPlanner.Executor in RexUtil.simplify
> -----------------------------------------------------------
>
> Key: CALCITE-1653
> URL: https://issues.apache.org/jira/browse/CALCITE-1653
> Project: Calcite
> Issue Type: Bug
> Reporter: Remus Rusanu
> Assignee: Remus Rusanu
> Attachments: CALCITE-1653.00.patch
>
>
> {{RexUtil.simplify}} (and derivatives) use a default {{EXECUTOR}} for
> evaluating literals and expression in {{simplifyCast}}. This causes value
> differences from Hive, triggering issues like CALCITE-1650, CALCITE-1651.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)