slachiewicz opened a new pull request, #13361:
URL: https://github.com/apache/maven/pull/13361

   `MavenITmng3004ReactorFailureBehaviorMultithreadedTest` and 
`MavenITmng0095ReactorFailureBehaviorTest` both run Maven in 
`target/test-classes/mng-0095`: `extractResources()` returns the resource 
directory in place, without a copy. Failsafe runs the IT classes in parallel 
forks (`its.forkCount` 0.75C), and every test of both classes deletes `target/` 
of the project and its modules before it checks `target/touch.txt`. When the 
two classes overlap, one deletes the file the other checks next:
   
   ```
   
MavenITmng3004ReactorFailureBehaviorMultithreadedTest.testitFailAtEndTwoThreads
   VerificationException: Expected file was not found: 
…/core-it-suite/target/test-classes/mng-0095/target/touch.txt
   ```
   
   This failed `integration-tests (ubuntu-latest, 25)` on master in [run 
37381035306](https://github.com/apache/maven/actions/runs/37381035306/job/112169656550),
 where both classes started within the same second; the same error hit 
`testitFailFastSingleThread` and `MavenITmng0095…testitFailAtEnd` on other runs.
   
   MNG-3004 now has its own copy of the project in `mng-3004` (same POMs, 
groupId `org.apache.maven.its.mng3004`). The tests check only the `touch.txt` 
files, so nothing else changes.
   
   I checked the other resource directories used by more than one IT class: 
`mng-4262` is shared with a class that is `@Disabled`, and the 
`mng-5889-find.mvn` tests only read theirs. maven-4.0.x runs its ITs in one 
fork, so it has no race and needs no backport.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
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