Replace manual `RowSelection` bitmap conversion with `force_mask()` after arrow-rs release
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Refactorización
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- data-engineering
Línea de trabajo
Después de que la dependencia parquet incluya RowSelection::force_mask(), empieza en datafusion/datasource-parquet/src/access_plan.rs y localiza la conversión manual de selector a bitmap en ParquetAccessPlan::scan_and_select. Sustituye esa conversión por la API upstream, elimina los imports que queden sin usar y ejecuta las pruebas existentes de intersección de selecciones de filas para confirmar que se conservan el respaldo de bitmap y las filas seleccionadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- Rust
- Estrellas
- 9.4k
- Forks
- 2.5k
- Merge medio
- 3 d 16 h
- PR fusionados (30 d)
- 372
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/datafusion
-
Lambda examples in the SQL function docs fail with the default dialectPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
apache/datafusion#25960 ·
Los mantenedores suelen responder en 1 día
-
Spark `xxhash64` hashes the raw bits of a NaN instead of the canonical NaNPosiblemente ocupada @mrhard9090 la tomó hace 2 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
apache/datafusion#25913 ·
Los mantenedores suelen responder en 1 día
-
trunc(x) on a column turns -0.0 into 0.0Posiblemente ocupada @1fanwang la tomó hace 9 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
apache/datafusion#25702 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
`percentile_cont` truncates Float64 interpolation weights to six decimal placesPosiblemente ocupada @aoto-tech la tomó hace 21 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
apache/datafusion#25266 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
CSV null_regex is applied to schema inference but never to the reader, so matching values are not nullPosiblemente ocupada @Developer1010x la tomó hace 21 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
apache/datafusion#25213 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de apache/datafusion
Issues similares
-
security-scan
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
content good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
StudentSuite/awesome-skills-plugins-for-students#293 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
app bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
openai/codex#51001 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
xberg-io/html-to-markdown#743 ·
Los mantenedores suelen responder en 1 día