[
https://issues.apache.org/jira/browse/MRESOLVER-123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17151366#comment-17151366
]
Michael Osipov commented on MRESOLVER-123:
------------------------------------------
[~emueller-coremedia],
1. At least the staging rules for Central running on Nexus Pro did reject SHA-2
hashes before 2.14.18. It might happen in your installation as well. Therefore,
you need to check. I am just being precautious.
2. There is no release date yet since some issues are open. If you want to
speed that up, pick the open issues and contribute PRs.
[~rreich], I have expected this and explain why this is the case:
* The lock is global (coarse) therefore every one has to wait. It is a bit of a
bottleneck.
* The longer the download needs the longer the lock is held by the current
thread.
For these two reasons I expect a rise in build times. I do expect that people
use a repo manager minimizing the download time of dependencies. Our Nexus
instance is 2 min physicaclly away. So you should be yours. Please try to
provide build times from work with a repo manager. I think this is pretty safe
to be cherry picked to 1.4.1.
At the end you have to decide you want a stable, but a slower build or a fast
and failing build. I would always prefer stable.
The next step is to have distinct locks per group id which would reduce
contention, but won't happen in this release because there are other challenges.
> Concurrency issues
> ------------------
>
> Key: MRESOLVER-123
> URL: https://issues.apache.org/jira/browse/MRESOLVER-123
> Project: Maven Resolver
> Issue Type: Bug
> Components: resolver
> Affects Versions: 1.4.2
> Reporter: Michael Osipov
> Priority: Critical
> Attachments: checksum-error-debug.log, successful-sha1-log.txt
>
>
> This is an umbrella ticket for a long standing issue with Maven Resolver: Our
> concurrency support is mediocre in a way that if two or more threads try to
> download the same file and fail to queue those write actions nicely. The
> problem is that The {{SyncContext}} and the its factory provided by Maven
> Resolver does not employ any locking at all. As layed out in detail in
> MRESOLVER-114 we need striped read write locks on artifacts and its metadata.
> This issue shall track progress on it. Even Takari Concurrent Repository
> extension does not help because it is only intended to synchronize concurrent
> access by multple JVMs and not threads.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)