-
Notifications
You must be signed in to change notification settings - Fork 867
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 nullif when existing array has no nulls #3034
Conversation
@@ -472,7 +472,7 @@ pub fn is_not_null(input: &dyn Array) -> Result<BooleanArray> { | |||
} | |||
|
|||
/// Copies original array, setting validity bit to false if a secondary comparison | |||
/// boolean array is set to true or null | |||
/// boolean array is set to true |
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.
I incorrectly changed this doc in https://github.com/apache/arrow-rs/pull/2940/files#diff-036c91a4b91e350837448f27da4ac4c0b43cfb477571330ac1f37654b0e2c172L471
if remainder_len != 0 { | ||
valid_count -= 64 - remainder_len | ||
} | ||
buffer |
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.
Should we also compensate valid_count for left_data.null_buffer() is Some case?
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.
Shouldn't need to as remainder u64 is masked to be 0 in the trailing positions, which when and-ed will not yield valid bits
Benchmark runs are scheduled for baseline = deb6455 and contender = 12f0ef4. 12f0ef4 is a master commit associated with this PR. Results will be available as each benchmark for each run completes. |
Which issue does this PR close?
Closes #3031
Rationale for this change
What changes are included in this PR?
Are there any user-facing changes?