You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Rheet Wong (JIRA)" <ji...@apache.org> on 2017/09/08 17:41:00 UTC

[jira] [Comment Edited] (CALCITE-1960) Duplicated mapping generated from RelMdPredicates

    [ https://issues.apache.org/jira/browse/CALCITE-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16158993#comment-16158993 ] 

Rheet Wong edited comment on CALCITE-1960 at 9/8/17 5:40 PM:
-------------------------------------------------------------

[~julianhyde] Yes, the test is succeeds without my fix, but for the ExprItr it loop 5 time,  only 4 times after my fix.
the example is like:
For the ExprItr,
```
columns is[12,15]
columnSets is [{3,12},{6,15}]
```
the loop times is the times of the permutation, so the loop times is 4(2 * 2), but now it's 5 times. and the test don't express it by result. it's my reason that it make test hardly and express it wrong. Sometimes it loop more and more times that it may take long long time.


was (Author: perid007):
[~julianhyde] Yes, the test is succeeds without my fix, but for the ExprItr it loop 5 time,  only 4 times after my fix.
the example is like:
For the ExprItr,
columns is[12,15]
columnSets is [{3,12},{6,15}]
the loop times is the times of the permutation, so the loop times is 4(2 * 2), but now it's 5 times. and the test don't express it by result. it's my reason that it make test hardly and express it wrong. Sometimes it loop more and more times that it may take long long time.

> Duplicated mapping generated from RelMdPredicates
> -------------------------------------------------
>
>                 Key: CALCITE-1960
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1960
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Rheet Wong
>            Assignee: Julian Hyde
>   Original Estimate: 1h
>  Remaining Estimate: 1h
>
> When inferring pulled up predicates, multiple mappings are generated to 
> make sure equivalent expressions can be substitute. E.g., for an expression 
> 'a + b + c' and the following equivalences: 
> {code:sql}
> a : {a, b}
> b : {a, b}
> c : {c, e}
> {code}
> should generate:
> {code:sql}
> a + a + c
> a + a + e
> a + b + c
> a + b + e
> b + a + c
> b + a + e
> b + b + c
> b + b + e
> {code}
> The mapping generation is a typical permutation generation process. However, 
> the current code is not handling the permutation well, thus causing duplicated 
> mappings.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)