gcd benchmarks pass number_rows: 0 for 100k-row inputs
Los mantenedores suelen responder en 1 día
@med9110 ya está trabajando en esto.
Desde el 14/10/2026.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 92/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- rust
- Área
- performance
Línea de trabajo
Empieza en datafusion/functions/benches/math_expressions/gcd.rs, en la construcción de ScalarFunctionArgs alrededor de las líneas 56, 77 y 98, donde se establece number_rows: 0. Compara con la línea 55 de lcm.rs, que pasa n_rows. Está terminado cuando los benchmarks de arrays pasan n_rows, el de escalar-escalar pasa 1, los mensajes de expect dicen "gcd should work on valid values" y cargo bench --bench math_expressions (o el filtro del bench de gcd) sigue ejecutándose.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
All three benchmarks in functions/benches/math_expressions/gcd.rs pass number_rows: 0 in ScalarFunctionArgs, including "gcd both array" and "gcd array and scalar", whose array inputs have 100,000 rows. The sibling lcm.rs benchmark passes number_rows: n_rows. A UDF that sizes its output or expands scalars from number_rows will not do the work the benchmark claims to measure.
Every gcd benchmark also uses the copy-pasted message .expect("date_bin should work on valid values").
To Reproduce
Read gcd.rs lines 56, 77 and 98 (number_rows: 0) and compare with lcm.rs line 55 (number_rows: n_rows).
Expected behavior
- Pass
number_rows: n_rowsfor the benchmarks with array inputs (and1for scalar-scalar). - Change the expect messages to
"gcd should work on valid values".
Additional context
to_char.rs (L144-L341), gcd.rs and lcm.rs repeat the same bench_function + ScalarFunctionArgs boilerplate seven times, which is how this drift happened. A small shared helper that takes the UDF, args, number_rows and return type would prevent it. That part is optional.
This is a small, self-contained change and a good first issue. Line references are pinned to commit 0d79252f61bd.
- Lenguaje dominante
- Rust
- Estrellas
- 9.5k
- Forks
- 2.5k
- Merge medio
- 4 d 16 h
- PR fusionados (30 d)
- 330
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
-
[Bug] atan2 does not normalize -0.0 the way Spark doesPosiblemente ocupada @spicysharkco la tomó hace 2 días. Abiertobug spark
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
apache/datafusion#26333 ·
Los mantenedores suelen responder en 1 día
-
bug help wanted unparser
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
apache/datafusion#26316 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Deduplicate bucket computation in width_bucket_interval_mdn_exactPosiblemente ocupada @nightcityblade la tomó hace 3 días. Abiertoenhancement good first issue help wanted spark tech debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
apache/datafusion#26307 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Use the shared aggr_test_schema in CSV scan tests instead of a local copyPosiblemente ocupada @med9110 la tomó hace 3 días. Abiertocore enhancement good first issue help wanted tech debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
apache/datafusion#26306 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Struct union type coercion takes field nullability from the wrong field when field order differsPosiblemente ocupada @med9110 la tomó hace 3 días. Abiertobug help wanted logical-expr tech debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
apache/datafusion#26296 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de apache/datafusion
Issues similares
-
The book has a Nix install section that chelis.ch lacks, and it names two of the three systemsAbiertoarea:ecosystem documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Chelis-Lang/chelis#3866 ·
Los mantenedores suelen responder en 1 día
-
bug documentation sev-0
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
dekobon/big-code-analysis#1620 ·
Los mantenedores suelen responder en 3 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100