The DUPs in each Phase are executed in the start method of an MSC Service
that represents that Phase for that deployment.[1] The start method
executes the DUPs associated with the phase and then installs the service
for the next phase.
So, all DUPs for PARSE will have run before any DEPENDENCIES DUPs are run.
[1]
https://github.com/wildfly/wildfly-core/blob/master/server/src/main/java/...
On Tue, Sep 18, 2018 at 11:01 AM, Peter Palaga <ppalaga(a)redhat.com> wrote:
 Hi *,
 I cannot find any info about what (if any) are the guarantees for
 ordering and exit of DeploymentUnitProcessors (DUPs) in case of an EAR
 that contains multiple WARs.
 I have a situation like this: MyDUP1 is registered for Phase.PARSE and
 MyDup2 is registered for Phase.DEPENDENCIES.
 I can see from the logs that MyDUP1.deploy(ear),
 MyDUP1.deploy(ear.war1), MyDUP1.deploy(war2), etc. are executed by
 distinct threads which is perfectly OK.
 I'd like to know if there is any guarantee that MyDup2.deploy(*)
 observes the completion of MyDUP1.deploy(ear), MyDUP1.deploy(ear.war1),
 MyDUP1.deploy(ear.war2), etc.?
 MyDUP1.deploy() collects some info from the EAR and the WARs and stores
 it as an attachment of the DeploymentUnit. MyDup2.deploy() is supposed
 to read that attachment and so it is important that the info is complete
 when MyDup2.deploy() reads it.
 Thanks,
 -- Peter
 _______________________________________________
 wildfly-dev mailing list
 wildfly-dev(a)lists.jboss.org
 
https://lists.jboss.org/mailman/listinfo/wildfly-dev
 
-- 
Brian Stansberry
Manager, Senior Principal Software Engineer
Red Hat