Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
3.0-beta-1
-
None
Description
Within a parallel build, modules A and B can start at the same time and decide at the same time that they need to download artifact X. Since X is not available locally, both can start download of X. Both will download X and both will try to write the file for X to disk.
On Windows platforms, one of them can fail with file locking problems. On Unixes the contents of the written file can be non-deterministic.
This issue is related to MNG-2802 in the sense that it can create a corrupted artifact file in the local repository, and it can happen to ANY file written. But as opposed to MNG-2802 the synhronization needed to fix this issue is basically only within a single running maven process, so regular java mechanisms can apply, whereas MNG-2802 probably needs to use a totally different solution space.
Attachments
Issue Links
- causes
-
MRESOLVER-134 Unsatisfiable Range header causing 416 HTTP error
- Closed
- is a child of
-
MNG-2802 Concurrent-safe access to local Maven repository
- Closed
- is cloned by
-
MNG-7545 Multi building can create bad files for downloaded artifacts in local repository
- Closed
- is duplicated by
-
MNG-4742 Multi-threaded artifact resolver corrupts artifacts on download
- Closed
- is related to
-
MNG-2802 Concurrent-safe access to local Maven repository
- Closed
- relates to
-
MNG-6604 Intermittent failures while downloading GAVs from Nexus
- Closed
-
MNG-5315 Artifact resolution sporadically fails in parallel builds
- Closed
- requires
-
MNG-6996 Upgrade Maven Resolver to 1.6.1
- Closed