Markus KARG created MASSEMBLY-692:
-------------------------------------

             Summary: Assembly ID is global
                 Key: MASSEMBLY-692
                 URL: https://jira.codehaus.org/browse/MASSEMBLY-692
             Project: Maven Assembly Plugin
          Issue Type: Bug
    Affects Versions: 2.4
         Environment: MVN 3.0.4, Multi-Module Project, Win 7 Pro SP1 64 Bit, 
JDK 7u51
            Reporter: Markus KARG
            Priority: Critical


Scenario: Multi-Module project. Submodule A packs A.zip using "single" goal. 
Submodule B packs B.zip using "single" goal. Submodule C has dependency on A, 
using "unpack" goal of maven-dependency-plugin. Running with -T 1 works well 
all the time. Running with -T 2C or higher threads count sporadically fails 
with EOFException (cannot unpack due to end of ZIP).

Workaround: We noticed that all works pretty well if A and B do not use the 
same <id> in the assembly descriptor. The bug really only happens if submodules 
A and B use THE SAME <id> while running with more than one thread!

It looks like the assembly plugin is using assembly <id> in a global namespace 
throughout the global reactor, while the typical assumption of the separate 
authors of A and B subprojects is that they do not have to negotiate upon 
different IDs, as the IDs is expected to be an extension to the artifact -- and 
obviously A and B do NOT share the same artifact!

Hence, we think it is a bug in the assembly plugin. It must not assume that 
<id> is globally unique, but it must keep it relative to <groupId><artifactId> 
combination to work safely in multi-threaded environments!



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)

Reply via email to