Skip to content

test: cover CrossJoinExec row metrics across batched inputs - #25530

Open
rgbuilds wants to merge 1 commit into
apache:mainfrom
rgbuilds:cursor/cross-join-metrics-tests-6895
Open

rgbuilds wants to merge 1 commit into
apache:mainfrom
rgbuilds:cursor/cross-join-metrics-tests-6895

Conversation

@rgbuilds

Copy link
Copy Markdown

Which issue does this PR close?

Part of #25333 (CrossJoinExec test coverage only).

Rationale for this change

Join metrics can be incorrect without affecting query results. Existing CrossJoinExec tests did not assert build_input_rows or input_rows across different input batch layouts.

What changes are included in this PR?

Adds Rust test coverage that:

  • Verifies build_input_rows, input_rows, and output_rows for the existing single-batch case.
  • Runs the same 3 × 2 cross join with input batch sizes of 2 and 1.
  • Confirms the row metrics remain 3, 2, and 6 regardless of input batching.

This is a test-only change.

What is the testing strategy for this PR?

cargo fmt --check
cargo test -p datafusion-physical-plan --lib joins::cross_join
cargo clippy -p datafusion-physical-plan --all-targets --all-features -- -D warnings

All checks pass locally.

Are there any user-facing changes?

No.

Add a Rust test that asserts build_input_rows, input_rows, and
output_rows stay stable when CrossJoinExec inputs are split into
multiple batches.

Related to apache#25333.
@rgbuilds
rgbuilds force-pushed the cursor/cross-join-metrics-tests-6895 branch from e12556c to 7c49814 Compare September 20, 2026 06:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

physical-plan Changes to the physical-plan crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant