[ 
http://jira.codehaus.org/browse/MNG-3004?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=168455#action_168455
 ] 

Hans-Peter Störr commented on MNG-3004:
---------------------------------------

Good point. But I am not sure that locking is a good way to do this - locking 
has its dangers. 
Perhaps it is possible to make parallel updates harmless. Such as downoading 
the files under a different name and renaming it to the right name only 
afterwards.

For the parallel build however I would suggest a two phase strategy:
1. Update and download all needed dependencies and plugins. (Singlethreaded, 
perhaps except for the actual downloads.)
2. Execute a parallel build without any updates / downloads
Perhaps a singlethreaded mvn validate and then a parallel build with maven in 
offline mode would do this? 

I've heard hudson already does parallel builds with maven. Anyone knows how 
they handle this problem?



> Allow build lifecycle to execute tasks in parallel
> --------------------------------------------------
>
>                 Key: MNG-3004
>                 URL: http://jira.codehaus.org/browse/MNG-3004
>             Project: Maven 2
>          Issue Type: Improvement
>          Components: Bootstrap & Build, General, Performance
>    Affects Versions: 2.0.6
>            Reporter: Nigel Magnay
>             Fix For: 2.2.0-M1
>
>         Attachments: parallel-builds.patch
>
>
> One of the great advantages with maven over scripted build environments is 
> that it can calculate the dependencies of the build, and it could execute 
> items that are independent of each other in parallel.
> Unfortunately it currently doesn't do this, which would be a big win over 
> tools such as 'ant'. It also means that multicore machines have lots of idle 
> capacity when running a serial build that could be utilised.
> I had a quick shot at seeing what might be required. Bear in mind this is the 
> first time I have looked at maven internally, and I was just trying to feel 
> my way around and build a POC. I got some of the way there, but my build 
> threads don't seem to have the correct classpath - I think this is something 
> to do with plexus / classworlds - but I don't know enough.
> It'd be great to get this feature in a future version, or a way of running my 
> hack (figuring out why in a thread has not the plexus stuff) in the interim.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to