databird07 opened a new pull request, #20362:
URL: https://github.com/apache/hudi/pull/20362

   ### Describe the issue this Pull Request addresses
   
   `test-spark-java17-java-tests-part1` is the longest GitHub CI job (~73 min). 
Its tests mostly wait on per-commit I/O and single-threaded work, so a second 
test JVM on the same runner nearly doubles throughput. The only things blocking 
two JVMs were fixed test ports and the shared JaCoCo output file.
   
   ### Summary and Changelog
   
   - `bot.yml`: this one job passes `-DforkCount=2` and a per-fork JaCoCo exec 
file name. Other jobs and the root pom defaults are unchanged.
   - `pom.xml`: surefire exports `hoodie.test.fork.number`. 
`HoodieTestUtils.toForkUniquePort` offsets the ZooKeeper (2828) and 
timeline-server test ports per fork. Fork 1 and non-forked runs keep the 
original ports.
   - `HoodieSparkClientTestHarness`: optional per-class SparkSession reuse 
behind `-Dhoodie.test.spark.reuse.context=true`. It's off by default and not 
enabled in CI, because it measured within noise on top of two forks. Happy to 
drop it from this PR if reviewers prefer.
   
   ### Impact
   
   CI-only behavior change. Local full part1 test step: median 3479s -> 2078s 
(-40%) over 3-4 runs. Every run had 4211 tests, 0 failures/errors and 65 
skipped. Peak ~6 GB per fork. 60 runs of the 31 slowest classes (half in random 
order) had 0 failures and 0 reruns. JaCoCo differences are limited to 
timing-dependent lines that other jobs cover deterministically; details are in 
the commit message.
   
   ### Risk Level
   
   medium. Parallel test JVMs can expose shared-resource assumptions in tests. 
Mitigated by the per-fork ports, 4 full-job runs and 60 repeated subset runs 
with random ordering. Only this one job changes.
   
   ### Documentation Update
   
   none
   
   ### Contributor's checklist
   
   - [x] Read through [contributor's 
guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [x] Enough context is provided in the sections above
   - [x] Adequate tests were added if applicable
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to