RyanJamesStewart commented on PR #9967: URL: https://github.com/apache/arrow-rs/pull/9967#issuecomment-4445410023
Pushed v2. Four changes from review: 1. Slow-path else branch refactored to slice once and use `range_nulls.iter()` for `def_levels` plus `range_nulls.valid_indices().map(|i| i + range.start)` for `non_null_indices`, mirroring the fast-path idiom. Drops the `unsafe value_unchecked` and the manual `BitIndexIterator::new` offset arithmetic. `BitIndexIterator` import removed. 2. `64` extracted into `BULK_FILL_MIN_LEN` const with a doc comment pointing to this PR for the sweep rationale. 3. In-code comment block compressed to four lines; threshold-sweep exposition moved into the PR description under a new `Threshold (BULK_FILL_MIN_LEN)` section. 4. AI-usage disclosure added near the top of the PR description per the CONTRIBUTING guidance. Tests, clippy, and fmt clean locally; CI is in flight. The fast-path branch and gate are unchanged, so the targeted bench shape (the latest bot run showed `primitive_all_null` 2.47x and `primitive_sparse_99pct_null` 1.60x, list paths back in noise) should hold under the refactor. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
