[regression] Error with adaptive predicate pushdown: "Invalid offset in sparse column chunk data: 754, no matching page found."#9301
Merged
alamb merged 3 commits intoapache:mainfrom Jan 30, 2026
Conversation
Contributor
Author
|
@alamb that's it? |
alamb
approved these changes
Jan 29, 2026
Contributor
alamb
left a comment
There was a problem hiding this comment.
Thank you @sdf-jkl -- this is a great find and fix that makes total sense to me 🙏 I am going to keep working on some more testing to be extra confident, but overall I think this is a perfect PR for fixing the bug while we sort out the better solution
| @@ -437,6 +437,18 @@ impl RowGroupReaderBuilder { | |||
| .with_parquet_metadata(&self.metadata) | |||
| .build_array_reader(self.fields.as_deref(), predicate.projection())?; | |||
Contributor
There was a problem hiding this comment.
This is a great fix -- and it makes total sense to me (basically that filter evaluation is a different path, so we need to revert the selector strategy on the filter path as well)
Co-authored-by: Andrew Lamb <[email protected]>
Contributor
|
FYI @hhhizzz |
Contributor
|
Thank you again so much for all your help with this @sdf-jkl |
alamb
added a commit
to alamb/arrow-rs
that referenced
this pull request
Jan 30, 2026
…in sparse column chunk data: 754, no matching page found." (apache#9301) <!-- We generally require a GitHub issue to be filed for all bug fixes and enhancements and this helps us generate change logs for our releases. You can link an issue to this PR using the GitHub syntax. --> - Closes apache#9239. Check issue <!-- Why are you proposing this change? If this is already explained clearly in the issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. --> Added a copy of `override_selector_strategy_if_needed` to the filter application stage. Now if we use mask selection, and there are skipped pages in predicate projection we enforce RLE selection. <!-- There is no need to duplicate the description in the issue here but it is sometimes worth providing a summary of the individual changes in this PR. --> Yes, using apache#9243 <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? --> <!-- If there are user-facing changes then we may require documentation to be updated before approving the PR. If there are any breaking changes to public APIs, please call them out. --> --------- Co-authored-by: Andrew Lamb <[email protected]>
Contributor
alamb
added a commit
that referenced
this pull request
Feb 2, 2026
… "Invalid offset …(#9301) (#9309) - Part of #9240 - Related to #9239 This is a backport of the following PRs to the 57 line - #9243 from @erratic-pattern (test) - #9301 from @sdf-jkl (the fix) Co-authored-by: Kosta Tarasov <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which issue does this PR close?
Rationale for this change
Check issue
What changes are included in this PR?
Added a copy of
override_selector_strategy_if_neededto the filter application stage.Now if we use mask selection, and there are skipped pages in predicate projection we enforce RLE selection.
Are these changes tested?
Yes, using #9243
Are there any user-facing changes?