[
https://issues.apache.org/jira/browse/DRILL-584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14030975#comment-14030975
]
Jinfeng Ni commented on DRILL-584:
----------------------------------
Completed the code review.
> ExpressionTreeMaterializer injects incorrect implicit casts
> -----------------------------------------------------------
>
> Key: DRILL-584
> URL: https://issues.apache.org/jira/browse/DRILL-584
> Project: Apache Drill
> Issue Type: Bug
> Components: Execution - Codegen
> Reporter: Mehant Baid
> Assignee: DrillCommitter
> Fix For: 1.0.0-BETA1
>
> Attachments: DRILL-584.patch
>
>
> In ExpressionTreeMaterializer.visitFunctionCall() we try to get a best match
> between the DrillFuncHolder and the input call. We may match the input call
> with a DrillFuncHolder whose argument type is different from that of the
> input, but is allowed to be implicitly cast as per the precedence rules.
> However when we inject implicit casts to compensate for the difference in
> argument types, we again use the same matching method to resolve the implicit
> cast to DrillFuncHolder. In the case of implicit casts should not match with
> a DrillFuncHolder that has different argument types than the input. We should
> return only the DrillFuncHolder that exactly matches the argument types and
> if no such holder is present should return NULL.
--
This message was sent by Atlassian JIRA
(v6.2#6252)