Skip to content

Consolidate core_integration/datasource and rename parquet_source --> parquet_integration - #18226

Merged
Jefffrey merged 1 commit into
apache:mainfrom
alamb:alamb/fewer_test_binaries2
Oct 23, 2025
Merged

Jefffrey merged 1 commit into
apache:mainfrom
alamb:alamb/fewer_test_binaries2

Conversation

@alamb

@alamb alamb commented Oct 22, 2025

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Rationale for this change

Running the following command

cargo test --test csv_schema_fix_test

Results in a 201 mb binary (and requires linking, etc) for only a few tests

du -s -h target/debug/deps/csv_schema_fix_test-48507d40c6598e82
201M	target/debug/deps/csv_schema_fix_test-48507d40c6598e82

Let's combine that into the existing core integration test to save CI runner space and time

Also, I have been confused why the parquet integration tests are named parquet_source (I think it is meant to mirror ParquetSource which is confusing) so let's change that to something more discoverable

What changes are included in this PR?

  1. Consolidate core_integration/datasource
  2. rename parquet_source --> parquet_integration

Are these changes tested?

It is only tests. You can run the tests in the new location via

cargo test --test core_integration -- csv

Are there any user-facing changes?

No, this is all internal test rearrangement

@alamb alamb added the development-process Related to development process of DataFusion label Oct 22, 2025
@github-actions github-actions Bot added core Core DataFusion crate and removed development-process Related to development process of DataFusion labels Oct 22, 2025

@Jefffrey Jefffrey left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to me 👍

@Jefffrey
Jefffrey added this pull request to the merge queue Oct 23, 2025
Merged via the queue into apache:main with commit 47fd638 Oct 23, 2025
28 checks passed
@alamb
alamb deleted the alamb/fewer_test_binaries2 branch October 24, 2025 10:02
@alamb

alamb commented Oct 24, 2025

Copy link
Copy Markdown
Contributor Author

Thanks @Jefffrey

@alamb alamb added the development-process Related to development process of DataFusion label Oct 24, 2025
tschwarzinger pushed a commit to tschwarzinger/datafusion that referenced this pull request Nov 2, 2025
… parquet_integration (apache#18226)

## Which issue does this PR close?
- related to apache#11210


## Rationale for this change

Running the following command

```shell
cargo test --test csv_schema_fix_test
```

Results in a 201 mb binary (and requires linking, etc) for only a few
tests

```shell
du -s -h target/debug/deps/csv_schema_fix_test-48507d40c6598e82
201M	target/debug/deps/csv_schema_fix_test-48507d40c6598e82
```


Let's combine that into the existing core integration test to save CI
runner space and time

Also, I have been confused why the parquet integration tests are named
`parquet_source` (I think it is meant to mirror `ParquetSource` which is
confusing) so let's change that to something more discoverable

## What changes are included in this PR?
1. Consolidate core_integration/datasource
2. rename `parquet_source` --> `parquet_integration`

## Are these changes tested?

It is only tests. You can run the tests in the new location via
```shell
cargo test --test core_integration -- csv
```

## Are there any user-facing changes?
No, this is all internal test rearrangement
EeshanBembi pushed a commit to EeshanBembi/datafusion that referenced this pull request Nov 24, 2025
… parquet_integration (apache#18226)

## Which issue does this PR close?
- related to apache#11210


## Rationale for this change

Running the following command

```shell
cargo test --test csv_schema_fix_test
```

Results in a 201 mb binary (and requires linking, etc) for only a few
tests

```shell
du -s -h target/debug/deps/csv_schema_fix_test-48507d40c6598e82
201M	target/debug/deps/csv_schema_fix_test-48507d40c6598e82
```


Let's combine that into the existing core integration test to save CI
runner space and time

Also, I have been confused why the parquet integration tests are named
`parquet_source` (I think it is meant to mirror `ParquetSource` which is
confusing) so let's change that to something more discoverable

## What changes are included in this PR?
1. Consolidate core_integration/datasource
2. rename `parquet_source` --> `parquet_integration`

## Are these changes tested?

It is only tests. You can run the tests in the new location via
```shell
cargo test --test core_integration -- csv
```

## Are there any user-facing changes?
No, this is all internal test rearrangement
bvolpato pushed a commit to bvolpato/datafusion that referenced this pull request Oct 16, 2026
…26422)

## Which issue does this PR close?

This follows the same rationale as earlier PRs like
- apache#10588
- apache#11831
- apache#18226
- apache#26419

## Rationale for this change

Each `.rs` file directly in `datafusion/core/tests` becomes its own test
binary. In this case, the standalone `tpcds_planning` binary requires
**390 MB** (408,695,296 bytes, as reported by `du -h`) on my machine
(macOS, aarch64)

```shell
cargo test -p datafusion --test tpcds_planning --no-run
```

The binary was added in
- apache#4719

## What changes are included in this PR?

Move `datafusion/core/tests/tpcds_planning.rs` to
`datafusion/core/tests/sql/tpcds_planning.rs` and register it in
`sql/mod.rs`, so it is built as part of `core_integration`.

Size of `core_integration` (debug build):

| | bytes |
|---|---|
| before | 457,595,344 |
| after | 458,314,960 (+703 KB) |

So this saves creating a ~390 MB binary at a cost of ~703 KB in
`core_integration`.

## What is the testing strategy for this PR?
CI

## Are there any user-facing changes?

No, developer productivity / CI efficiency

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core Core DataFusion crate development-process Related to development process of DataFusion

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants