-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Fix dictionary handling in AggregationMaskCompiler #21363
Conversation
Can we add a test to avoid future regressions? |
Variable position = scope.declareVariable("position", body, constantInt(0)); | ||
BytecodeExpression isPositionSelected = testMaskBlock(maskValueBlock, maskBlockMayHaveNull, position); | ||
Variable maskValueBlockPosition = scope.declareVariable("maskValueBlockPosition", body, constantInt(0)); | ||
BytecodeExpression isMaskPositionSelected = testMaskBlock(maskValueBlock, maskBlockMayHaveNull, maskValueBlockPosition); |
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.
inline?
there are repro steps in #21272 (comment). |
@findepi test cases are not part of this change |
Reproducing this requires a specific organization of blocks and dictionaries, so using a query to do this is pretty brittle. To really test this the aggregation mask must be driven manally with the correct combination of blocks. I might be able to look at adding a test like that today, but it will likely be tomorrow or Friday. |
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.
Let's get this in so that we can release today.
We can follow up with the test later.
Description
Generated AggregationMask was not properly handling dictionary encoded mask blocks.
Fixes #21272
Release notes
(x) Release notes are required, with the following suggested text: