You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "Zhong Yanghong (JIRA)" <ji...@apache.org> on 2017/10/11 18:03:00 UTC

[jira] [Resolved] (KYLIN-2600) Incorrectly set the range start when filtering by the minimum value

     [ https://issues.apache.org/jira/browse/KYLIN-2600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Zhong Yanghong resolved KYLIN-2600.
-----------------------------------
    Resolution: Fixed

> Incorrectly set the range start when filtering by the minimum value
> -------------------------------------------------------------------
>
>                 Key: KYLIN-2600
>                 URL: https://issues.apache.org/jira/browse/KYLIN-2600
>             Project: Kylin
>          Issue Type: Bug
>          Components: Query Engine
>            Reporter: Zhong Yanghong
>            Assignee: Zhong Yanghong
>             Fix For: v2.2.0
>
>
> Before defining a range of a scan, the range start may be not correct in the following case:
> {code}
> OR [
>       AND [
>               a <= 3,
>               b = 2
>       ],
>       AND [
>               a = 0, (note that 0 is the minimum of a)
>               b = 1
>       ]
> ]
> {code}
> In this case, kylin will generate two ranges:
> {code}
> [null,2] - [3, 2]
>     [0,1] - [0,1]
> {code}
> There's a rule when merging ranges. If the range start is null, it will be ordered before others whose range start is not null. Then the merged range of these two ranges will be 
> \[null,2\] - \[3, 2\].
> Replacing null with 0, the range sent to coprocessor will be 
> \[0,2\] - \[3, 2\].
> However, it should be 
> \[0,1\] - \[3, 2\]
> and the rule should be refined.



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