[
https://issues.apache.org/jira/browse/CALCITE-935?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde updated CALCITE-935:
--------------------------------
Description:
We need to improve ReduceExpressionRule to deal with multiple "equals to
literal" in predicate. In ReduceExpressionRule.java, L396-397:
{code}final ImmutableMap<RexNode, RexLiteral> constants =
predicateConstants(predicates);{code}
The query is {code}select * from src where (key='12' and key is null);{code}
Here 'key' is a string type and it is one of the columns of 'src' table.
Then we will have predicates {noformat}[=($0, '12'), isnull($0)]{noformat}which
is the input of the
predicateConstants, and the function will return "{$0='12'}"
was:
In ReduceExpressionRule.java,
L396-397:
final ImmutableMap<RexNode, RexLiteral> constants =
predicateConstants(predicates);
The query is "select * from src where (key='12' and key is
null);" Here 'key' is a string type and it is one of the columns of 'src'
table.
Then we will have predicates [=($0, '12'), isnull($0)], which is the input of
the
predicateConstants, and the function will return "{$0='12'}"
> Improve how ReduceExpressionsRule handles duplicate constraints
> ---------------------------------------------------------------
>
> Key: CALCITE-935
> URL: https://issues.apache.org/jira/browse/CALCITE-935
> Project: Calcite
> Issue Type: Bug
> Reporter: Pengcheng Xiong
> Assignee: Julian Hyde
> Fix For: 1.5.0
>
> Attachments: CALCITE-935.01.patch
>
>
> We need to improve ReduceExpressionRule to deal with multiple "equals to
> literal" in predicate. In ReduceExpressionRule.java, L396-397:
> {code}final ImmutableMap<RexNode, RexLiteral> constants =
> predicateConstants(predicates);{code}
> The query is {code}select * from src where (key='12' and key is null);{code}
> Here 'key' is a string type and it is one of the columns of 'src' table.
> Then we will have predicates {noformat}[=($0, '12'),
> isnull($0)]{noformat}which is the input of the
> predicateConstants, and the function will return "{$0='12'}"
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)