DISTINCT COUNT/SUM/AVG NULL support.#11348
Conversation
Codecov Report
@@ Coverage Diff @@
## master #11348 +/- ##
=============================================
- Coverage 68.46% 14.52% -53.95%
+ Complexity 6535 201 -6334
=============================================
Files 2233 2300 +67
Lines 119952 123622 +3670
Branches 18191 18796 +605
=============================================
- Hits 82128 17958 -64170
- Misses 31984 104149 +72165
+ Partials 5840 1515 -4325
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 1747 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
| // For dictionary-encoded expression, store dictionary ids into the bitmap | ||
| Dictionary dictionary = blockValSet.getDictionary(); | ||
| if (dictionary != null) { | ||
| if (dictionary != null && !_nullHandlingEnabled) { |
There was a problem hiding this comment.
We can still use dictionary id even when null handling is enabled
There was a problem hiding this comment.
We cannot use dictionary ID when NULL handling is enabled because Integer.MIN_VALUE and NULL share the same dictionary ID.
There was a problem hiding this comment.
That is not true here. We won't add null values into the set, so the one added to the set is guaranteed to be Integer.MIN_VALUE
There was a problem hiding this comment.
Done.
I previously thought the int[] dictIds = blockValSet.getDictionaryIdsSV(); was to get the dictionary IDs metadata and had the confusion in the earlier comment.
Jackie-Jiang
left a comment
There was a problem hiding this comment.
We also want to add support to aggregateGroupByMV()
| // For dictionary-encoded expression, store dictionary ids into the bitmap | ||
| Dictionary dictionary = blockValSet.getDictionary(); | ||
| if (dictionary != null) { | ||
| if (dictionary != null && !_nullHandlingEnabled) { |
There was a problem hiding this comment.
This part should also be fixed
There was a problem hiding this comment.
Done.
Sorry, I should have fixed this part in the previous commit.
shenyu0127
left a comment
There was a problem hiding this comment.
We also want to add support to aggregateGroupByMV()
Indeed. Done.
| // For dictionary-encoded expression, store dictionary ids into the bitmap | ||
| Dictionary dictionary = blockValSet.getDictionary(); | ||
| if (dictionary != null) { | ||
| if (dictionary != null && !_nullHandlingEnabled) { |
There was a problem hiding this comment.
Done.
Sorry, I should have fixed this part in the previous commit.
This PR adds NULL support for queries like: