Use the shared aggr_test_schema in CSV scan tests instead of a local copy
Les mainteneurs répondent en général sous 1 jour
@med9110 y travaille déjà.
Depuis le 14/10/2026.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 85/100
Piste de recherche
Commence dans le module de tests de datafusion/core/src/datasource/physical_plan/csv.rs et repère la copie privée de aggr_test_schema(). Sa contrepartie publique se trouve dans datafusion/core/src/test_util/mod.rs, importe-la donc depuis crate::test_util et conserve aggr_test_schema_with_missing_col construite au-dessus d'elle. Lance les tests CSV avec cargo test dans le crate datafusion-core. C'est terminé lorsque la copie locale a disparu et que ces tests passent toujours.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Is your feature request related to a problem or challenge?
The test module in core/src/datasource/physical_plan/csv.rs defines a private aggr_test_schema() that is a verbatim copy of the public datafusion::test_util::aggr_test_schema(). If the shared schema changes (for example new columns or metadata on aggregate_test_100.csv), the CSV tests keep using the stale copy.
The same module also repeats about 35 lines of scan setup in every rstest case (session context, partitioned_file_groups, CsvOptions, TableSchema, CsvSource, FileScanConfigBuilder), differing only in projection, limit and the expected snapshot (L130-L442). json.rs (L213-L372) does the same with prepare_store and JsonSource.
Describe the solution you'd like
- Delete the local
aggr_test_schemain the csv.rs tests and importcrate::test_util::aggr_test_schema. Keepaggr_test_schema_with_missing_colas a derivation of it. - Optionally add a test helper such as
csv_scan_config(file_compression_type, file_schema, |builder| ...) -> FileScanConfigthat does the shared setup, so each rstest case only applies its projection or limit and asserts. Do the same for json.rs.
Describe alternatives you've considered
Do step 1 only.
Additional context
Step 1 is a small, self-contained change and a good first issue. Line references are pinned to commit 0d79252f61bd.
- Langage dominant
- Rust
- Étoiles
- 9.5k
- Forks
- 2.5k
- Merge moyen
- 4 j 19 h
- PR mergées (30 j)
- 342
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de apache/datafusion
-
[Bug] atan2 does not normalize -0.0 the way Spark doesPeut-être pris @spicysharkco l’a pris il y a 1 jour. Ouvertebug spark
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
apache/datafusion#26333 ·
Les mainteneurs répondent en général sous 1 jour
-
bug help wanted unparser
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
apache/datafusion#26316 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Deduplicate bucket computation in width_bucket_interval_mdn_exactPeut-être pris @nightcityblade l’a pris il y a 2 jours. Ouverteenhancement good first issue help wanted spark tech debt
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
apache/datafusion#26307 · 3 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
gcd benchmarks pass number_rows: 0 for 100k-row inputsPeut-être pris @med9110 l’a pris il y a 2 jours. Ouvertebug functions good first issue help wanted tech debt
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
apache/datafusion#26297 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Struct union type coercion takes field nullability from the wrong field when field order differsPeut-être pris @med9110 l’a pris il y a 2 jours. Ouvertebug help wanted logical-expr tech debt
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
apache/datafusion#26296 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de apache/datafusion
Issues similaires
-
build: Update rust versionPeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertedependencies
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
ibm-granite-community/granite-cli#229 ·
Les mainteneurs répondent en général sous 1 jour
-
setTargetAtTime booked ahead of time starts its curve early (values blow up before start_time)Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
orottier/web-audio-api-rs#658 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
aosama/astronomical#1318 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
bug: `shep kelpie finish all`Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
shep-pm/shep-kelpie#980 ·
Les mainteneurs répondent en général sous 1 jour