You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Markus KARG (JIRA)" <ji...@codehaus.org> on 2014/03/21 12:04:59 UTC

[jira] (MASSEMBLY-692) Assembly ID is global

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)