-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Enhancement] in null/not having null supports normalized to value range #54646
Conversation
Signed-off-by: trueeyu <[email protected]>
Signed-off-by: trueeyu <[email protected]>
Signed-off-by: trueeyu <[email protected]>
Signed-off-by: trueeyu <[email protected]>
Signed-off-by: trueeyu <[email protected]>
[Java-Extensions Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
[FE Incremental Coverage Report]✅ pass : 0 / 0 (0%) |
@@ -130,6 +130,7 @@ class ColumnValueRange { | |||
TCondition to_olap_not_null_filter() const; | |||
|
|||
void clear(); | |||
void clear_to_empty(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what's the difference between clear()
and clear_to_empty()
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
clear_to_empty means all values is filtered,EOF. but clear means to init state, is full range.
[BE Incremental Coverage Report]❌ fail : 29 / 39 (74.36%) file detail
|
…nge (StarRocks#54646) Signed-off-by: trueeyu <[email protected]> Signed-off-by: maggie-zhu <[email protected]>
Why I'm doing:
Currently, only the following pred can be normalized:
or
,and
The
[ColumnRef in (xxx, yyy, zzz)] is null
is not support to be normalized, so the null inin pred
ornot in pred
can be eliminated.in (xxx, yyy, zzz, null)
can be converted toin (xxx, yyy, zzz)
not in (xxx, yyy, zzz, null)
can be converted tonot in (null)
, and then convert to empty range.Finally the in pred with null can be used to filter with zonemap or other index.
Before the pr:
After the pr
What I'm doing:
in null/not in null supports normalized to value range
What type of PR is this:
Does this PR entail a change in behavior?
If yes, please specify the type of change:
Checklist:
Bugfix cherry-pick branch check: