[
https://jira.codehaus.org/browse/MCOMPILER-170?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=298000#comment-298000
]
Falko Modler commented on MCOMPILER-170:
----------------------------------------
Thanks for the quick response/implementation!
I carried out some tests with 2.5-SNAPSHOT and 2.3.2. Project contains ~160
modules and ~3600 java files. Built with {{mvn clean install}}.
Format: {{<total build time>, <compiler-plugin's proportion of the execution
time of all plugins in percent> (<as before but in minutes>)}}
The last two figures have been recorded by a special maven build extension I
wrote some time ago.
The results:
*Single-threaded build*
reuseSame
02:53, 75,4% (2:00)
reuseCreated
02:53, 75,5% (2:00)
alwaysNew
03:49, 81,7% (2:56)
2.3.2
03:45, 81,3% (2:52)
*Multi-threaded build (-T4)*
reuseSame
Errors as expected
reuseCreated
01:30, 74,1% (2:52)
alwaysNew
02:00, 82,3% (4:35)
2.3.2
01:57, 81,7% (4:27)
Just for the records: *-Dmaven.compiler.fork=true* with 2.5-SNAPSHOT
Single-threaded
04:20, 84,1% (3:26)
-T4
02:12, 84,0% (5:12)
As you can see, reuseCreated yields the same results for single-threaded builds
as reuseSame while still maintaining backwards-compatibility for parallel
builds.
So the question is: Do we really need reuseSame? If yes: Why? And in case
reuseSame needs to stay, I'm very much in favor of having reuseCreated as the
default.
> Regression: Compiler Plugin fails when building with multiple threads (-T...)
> -----------------------------------------------------------------------------
>
> Key: MCOMPILER-170
> URL: https://jira.codehaus.org/browse/MCOMPILER-170
> Project: Maven 2.x Compiler Plugin
> Issue Type: Bug
> Affects Versions: 2.4
> Environment: Windows 7 x64, JDK 1.6.0_31, Maven 3.0.4
> Reporter: Falko Modler
> Assignee: Olivier Lamy
> Priority: Critical
> Fix For: 2.5
>
>
> I just tried building my current project which is rather large and has many
> sub-modules.
> With version 2.3.2 (and below) of the plugin I was able to build the whole
> project with multiple threads, let's say:
> {{mvn clean compile -T4}}
> Version 2.4 fails with random errors when using this command line!
> Errors include missing closing brackets, "cannot find symbol" and so on. It's
> also not always the same module where the errors occur.
> A single-threaded build with:
> {{mvn clean compile}}
> *completes just fine*!
> Unfortunately I cannot upload my project for copyright reasons.
> So for me it looks like a "classic" concurrency problem. Maybe side effect of
> MCOMPILER-166?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira