[ https://issues.apache.org/jira/browse/MRESOLVER-177?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17338963#comment-17338963 ]
Michael Osipov commented on MRESOLVER-177: ------------------------------------------ Fixed with [8a6bd7e1132dac87fe72f0ead7adfc306522900f|https://gitbox.apache.org/repos/asf?p=maven-resolver.git&a=commit&h=8a6bd7e1132dac87fe72f0ead7adfc306522900f] on 1.6.x. > Move pre-/post-processing of metadata from ResolveTask to > DefaultMetadataResolver > --------------------------------------------------------------------------------- > > Key: MRESOLVER-177 > URL: https://issues.apache.org/jira/browse/MRESOLVER-177 > Project: Maven Resolver > Issue Type: Task > Components: Resolver > Affects Versions: 1.6.2 > Reporter: Michael Osipov > Assignee: Tamás Cservenák > Priority: Major > Fix For: 1.6.3, 1.7.0 > > > Using the {{ResolveTask}} on the same metadata file from multiple > repositories creates a race condition on {{resolver-status.properties}} > because no worker thread is holding a lock on that file while the parent > (waiting) thread holds a lock on the metadata item only. > We don't want to introduce any synchronization in the tracking file manager > because it is almost always called from within a synchronized context. > Instead we are inlining (moving) the pre-/post-processing of metadata into > the caller thread and will leave the sole download (safe) handling ot the > {{ResolveTask}}. -- This message was sent by Atlassian Jira (v8.3.4#803005)