Stefan Oehme created MNG-6720:
---------------------------------

             Summary: MultiThreadedBuilder does not wait for outstanding 
projects to complete
                 Key: MNG-6720
                 URL: https://issues.apache.org/jira/browse/MNG-6720
             Project: Maven
          Issue Type: Bug
          Components: core
    Affects Versions: 3.6.1, 3.5.4
            Reporter: Stefan Oehme


When a project fails using --fail-fast mode, other projects that are currently 
running in parallel are not finished before the "session finished" event is 
sent. This leads to issues for extensions that rely on the documented order of 
events, which says that "session finished" is only sent "after all projects 
have finished executing".

In our case, we close a service on "session finished", and that service is 
needed to execute goals. The goals that were running in parallel at that time 
then fail, saying that our service was closed, giving our users the impression 
that there is a bug in our code.

The relevant line is 
[here|[https://github.com/apache/maven/blob/master/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java#L179]].
 Instead of using `poll`, which simply returns when the parallel projects 
aren't finished yet, the code should shut down the executor and wait for it to 
complete the outstanding parallel work.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to