I think you're right on this.

the code modifies the filter in the first CubeSegmentScanner and won't get
modified in the subsequent CubeSegmentScanners again. Due to the difference
of different segment's dictionaries, it might be wrong.

I'm opening a JIRA for this and it will be fixed in 1.5.4

On Wed, Aug 10, 2016 at 10:53 AM, [email protected] <[email protected]>
wrote:

> CubeStorageQuery.search/ CubeSegmentScanner
>
> when filter is translated for the first segment, filter is changed to
> CompareTupleFilter(IN clause)
> translate will not triger for the next segments.
> this is not right because dictionary is not same for every segments.
>
> assume data like this:
>
> merchant_name  cube segment
> 深海新创专营          20160725
> 深海新创手机          20160726
>
> when search with like '%深海新创%'
> CubeSegmentScanner scan segment '20160725' , and filter is changed to in
> clause( IN '深海新创专营')
> result is right for this segment ,but not for the next segments because
> filter now has been changed.
>
>
>
> --
> View this message in context: http://apache-kylin.74782.x6.
> nabble.com/Question-abount-BuildInFunctionTransformer-tp5499p5533.html
> Sent from the Apache Kylin mailing list archive at Nabble.com.
>



-- 
Regards,

*Bin Mahone | 马洪宾*

Reply via email to