Replace manual `RowSelection` bitmap conversion with `force_mask()` after arrow-rs release
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 76/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- rust
- Lĩnh vực
- data-engineering
Hướng nghiên cứu
Sau khi dependency parquet bao gồm RowSelection::force_mask(), bắt đầu tại datafusion/datasource-parquet/src/access_plan.rs và tìm phần chuyển đổi thủ công từ selector sang bitmap trong ParquetAccessPlan::scan_and_select. Thay thế phần chuyển đổi đó bằng upstream API, xóa các imports không còn được sử dụng và chạy các bài kiểm thử giao của row-selection hiện có để xác nhận rằng phần backing bằng bitmap và các hàng được chọn vẫn được giữ nguyên.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Is your feature request related to a problem or challenge?
PR #25731 preserves bitmap-backed Parquet row selections. When intersecting an existing bitmap-backed selection with a selector-backed selection, ParquetAccessPlan::scan_and_select currently builds a bitmap manually using BooleanBufferBuilder.
The upstream API proposed in apache/arrow-rs#11337, RowSelection::force_mask(), encapsulates this conversion. This issue tracks adopting it once DataFusion depends on a released parquet version that includes the API.
Describe the solution you'd like
After upgrading to a parquet version that provides RowSelection::force_mask():
- Replace the manual selector-to-bitmap conversion in
datafusion/datasource-parquet/src/access_plan.rswithselection.force_mask(). - Remove any imports made unused by the change.
- Verify that the existing row-selection intersection tests continue to pass, preserving bitmap backing and selected rows.
Describe alternatives you've considered
Keep the current manual conversion. It preserves the required behavior, but duplicates functionality provided by parquet once the new API is available.
Additional context
- Follow-up to the review discussion in #25731.
- Upstream API: apache/arrow-rs#11337.
- Ngôn ngữ chính
- Rust
- Star
- 9.4k
- Fork
- 2.5k
- Merge trung bình
- 3 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 381
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của apache/datafusion
-
`CoalescePartitionsExec::cardinality_effect` returns `Equal` when `fetch` is setCó thể đã có người làm @asolimando đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
apache/datafusion#26050 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Lambda examples in the SQL function docs fail with the default dialectCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
apache/datafusion#25960 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Spark `xxhash64` hashes the raw bits of a NaN instead of the canonical NaNCó thể đã có người làm @mrhard9090 đã nhận 3 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
apache/datafusion#25913 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
trunc(x) on a column turns -0.0 into 0.0Có thể đã có người làm @1fanwang đã nhận 11 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
apache/datafusion#25702 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
`percentile_cont` truncates Float64 interpolation weights to six decimal placesCó thể đã có người làm @aoto-tech đã nhận 22 ngày trước. Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
apache/datafusion#25266 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của apache/datafusion
Issue tương tự
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
zcashlabs/thus-spoke-zakura#153 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
app bug windows-os
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Improve sublime text syntaxĐang mởeditor good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
funnyboy-roks/inq#54 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
pnpm/pnpm#16635 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: Bedrock request metadata forwarding does not work for /embeddingsCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởbug llm translation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày