apache / apache/maven-build-cache-extension
Test `p10-reactor-partial-RemoteParentVersionBumpInvalidatesTest` is wrong
- Dominant language
- Java
- Stars
- 163
- Forks
- 77
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 4
Description
### Affected version
master
### Bug description
The `p10-reactor-partial-RemoteParentVersionBumpInvalidatesTest` IT is IMHO wrong.
Currently on master it passes ONLY due Maven 4 project-wide repository (but fails with Maven 3.9). Currently, it does not even runs with Maven 3.9 (as it is "smoke" and runs only with Maven 4).
It passes with Maven 4 as it has project-wide repository, that is not handled by Build Cache Extension.
When running on master (Maven 4), this is contents of `log-corp-v11-install.txt`:
```
[INFO] Error stacktraces are turned on.
[INFO] Loading cache configuration from /home/cstamas/Worx/apache-maven/maven-build-cache-extension/target/mvn-cache-tests/ReferenceProjectTest/p10-reactor-partial-RemoteParentVersionBumpInvalidatesTest/project/.mvn/maven-build-cache-config.xml
[INFO] Using XX hash algorithm for cache
[INFO] Mimir 0.12.0 session created with DaemonNode (basedir=/home/cstamas/.mimir; daemonPID=15114; daemonVersion=0.12.0)
[INFO] Scanning for projects...
[INFO]
[INFO] -----------< org.apache.maven.caching.test.p10:corp-parent >------------
[INFO] Building P10 - Corp Parent (external) 1.1
[INFO] from pom.xml
[INFO] --------------------------------[ pom ]---------------------------------
[WARNING] Version not locked for default bindings plugins [maven-install-plugin], you should define versions in pluginManagement section of your pom.xml or parent
[INFO] Cache is INITIALIZED on project level for org.apache.maven.caching.test.p10:corp-parent
[INFO] Going to calculate checksum for project [groupId=org.apache.maven.caching.test.p10, artifactId=corp-parent, version=1.1]
[INFO] Scanning plugins configurations to find input files. Probing is enabled, values will be checked for presence in file system
[INFO] Found 0 input files. Project dir processing: 0, plugins: 0 millis
[INFO] Project inputs calculated in 3 ms. XX checksum [0f1fe45f4174de71] calculated in 1 ms.
[INFO] Attempting to restore project org.apache.maven.caching.test.p10:corp-parent from build cache
[INFO] Local build found by checksum 0f1fe45f4174de71
[INFO] Found cached build, restoring org.apache.maven.caching.test.p10:corp-parent from cache by checksum 0f1fe45f4174de71
[INFO] Skipping plugin execution (cached): install:install
[INFO] Copying org.apache.maven.caching.test.p10:corp-parent:pom:1.1 to project local repository
[INFO] Copying org.apache.maven.caching.test.p10:corp-parent:pom:consumer:1.1 to project local repository
[INFO] Copying org.apache.maven.caching.test.p10:corp-parent:pom:consumer:1.1 to project local repository
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.062 s
[INFO] Finished at: 2026-07-19T16:52:31+02:00
[INFO] ------------------------------------------------------------------------
[INFO] Mimir session closed (RETRIEVED=0 CACHED=0)
```
When same test in https://github.com/apache/maven-build-cache-extension/pull/509 runs with 3.9.16, this is the output:
```
[INFO] Error stacktraces are turned on.
[INFO] Loading cache configuration from /home/cstamas/Worx/apache-maven/maven-build-cache-extension/target/mvn-cache-tests/ReferenceProjectTest/p10-reactor-partial-RemoteParentVersionBumpInvalidatesTest/project/.mvn/maven-build-cache-config.xml
[INFO] Using XX hash algorithm for cache
[INFO] Scanning for projects...
[INFO]
[INFO] -----------< org.apache.maven.caching.test.p10:corp-parent >------------
[INFO] Building P10 - Corp Parent (external) 1.1
[INFO] from pom.xml
[INFO] --------------------------------[ pom ]---------------------------------
[INFO] Cache is INITIALIZED on project level for org.apache.maven.caching.test.p10:corp-parent
[INFO] Going to calculate checksum for project [groupId=org.apache.maven.caching.test.p10, artifactId=corp-parent, version=1.1]
[INFO] Scanning plugins configurations to find input files. Probing is enabled, values will be checked for presence in file system
[INFO] Found 0 input files. Project dir processing: 0, plugins: 1 millis
[INFO] Project inputs calculated in 3 ms. XX checksum [06e82104aebd6514] calculated in 2 ms.
[INFO] Attempting to restore project org.apache.maven.caching.test.p10:corp-parent from build cache
[INFO] Local build found by checksum 06e82104aebd6514
[INFO] Found cached build, restoring org.apache.maven.caching.test.p10:corp-parent from cache by checksum 06e82104aebd6514
[INFO] Skipping plugin execution (cached): install:install
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.034 s
[INFO] Finished at: 2026-07-19T17:01:50+02:00
[INFO] ------------------------------------------------------------------------
```
Two issues:
* BCE wrongly detects "nothing changed" which is untrue, parent POM has version and dependency change
* hence Maven 3.9 skips installing it (hence the test fails), while Maven 4 **silently**, despite skipping it, installs it into project wide repository, making it resolvable within Maven 4.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the p10-reactor-partial-RemoteParentVersionBumpInvalidatesTest integration test and compare its behavior under Maven 3.9.16 and Maven 4, using the logs and PR #509 as context. Trace how the parent POM version and dependency changes affect cache invalidation and installation; done means the test detects the change without relying on Maven 4's project-wide repository.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100