Skip to content

[python] Batch mixed Java write tests#8405

Merged
JingsongLi merged 1 commit into
apache:masterfrom
JingsongLi:codex/batch-java-mixed-tests
Jul 1, 2026
Merged

[python] Batch mixed Java write tests#8405
JingsongLi merged 1 commit into
apache:masterfrom
JingsongLi:codex/batch-java-mixed-tests

Conversation

@JingsongLi

Copy link
Copy Markdown
Contributor

Summary

Batch the Java write side of run_mixed_tests.sh by module before the existing Python validation flow. This reduces repeated Maven invocations while preserving an opt-out path for the original one-by-one execution.

Changes

  • Add a batched Maven helper that groups Java write tests per module with the existing Python-version gates.
  • Skip duplicate Java write Maven calls in later Java-to-Python phases after the batched phase succeeds.
  • Stop early on batched Java write failure and document MIXED_TESTS_BATCH_JAVA_WRITES=false for isolating failures with the previous flow.

Testing

  • bash -n paimon-python/dev/run_mixed_tests.sh
  • git diff --check
  • Full mixed Java/Python E2E script or CI run

Notes

I attempted a small Maven multi-method selection smoke test, but it produced no output for over two minutes and was interrupted to avoid leaving a long-running local verification.

@leaves12138 leaves12138 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.

LGTM. I reviewed the batching control flow for the mixed Java/Python script.

The default path now runs the Java write methods in per-module batches before the existing Python validation flow, and the later Java-write phases are skipped only after the batched phase succeeds. The MIXED_TESTS_BATCH_JAVA_WRITES=false opt-out still preserves the original one-by-one Maven flow.

Local verification:

  • bash -n paimon-python/dev/run_mixed_tests.sh
  • git diff origin/master..HEAD --check
  • Mocked full-script dry run with fake mvn/python: default batch path reduced Maven calls from 31 to 14 while keeping the Java read phases, and the opt-out path kept the original 31 Maven invocations.
  • Mocked failed batched Java write path: the script exits before entering Python validation.

I did not run the full mixed Java/Python E2E suite locally.

@JingsongLi JingsongLi merged commit c5a8c4a into apache:master Jul 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants