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

sibing.zhang updated KYLIN-5331:
--------------------------------
    Summary: When the where conditions are mutually exclusive, the aggregation 
query returns "The current query exceeds the data range of the model service. 
Please add a segment  (was: When the where conditions in sql are mutually 
exclusive, the aggregate query incrementally built data results in empty)

> When the where conditions are mutually exclusive, the aggregation query 
> returns "The current query exceeds the data range of the model service. 
> Please add a segment
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: KYLIN-5331
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5331
>             Project: Kylin
>          Issue Type: Bug
>    Affects Versions: 5.0-alpha
>            Reporter: sibing.zhang
>            Priority: Major
>             Fix For: 5.0-alpha
>
>
> The conditions in the query are mutually exclusive: CUSTOMER.C_NATION in 
> ('INDONESIA') and CUSTOMER.C_NATION in ('KENYA'), the result of the 
> aggregation query is empty, and return "Add Segment is advised when the query 
> is out of service range in query condition mutex".But the actual segment data 
> exists.
> *root cause:*
> When the query is in the select realization and prune segment steps, all 
> segments are returned directly in the case of a full build. However, in the 
> case of incrementally build, if the filter conditions are mutually exclusive, 
> an empty list will be returned, which will cause the subsequent logic to find 
> that the segment is not hit, and set the returned result to be empty. The two 
> behave inconsistently.
> *fix design:*
> Modify the logic of prune segments. When prune segment, if the filter 
> condition is false (mutually exclusive), all segments are returned directly. 
> When prune segments, if the filter condition is false, the relevant 
> information will be returned to the front end, and the front end will judge 
> whether the query exceeds the range of the segment based on this information, 
> so as to display the returned information.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to