[Resolved] (MASSEMBLY-866) poor performance of jar-with-dependencies when run in same run as docbook

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[Resolved] (MASSEMBLY-866) poor performance of jar-with-dependencies when run in same run as docbook

JIRA jira@apache.org

     [ https://issues.apache.org/jira/browse/MASSEMBLY-866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Vines resolved MASSEMBLY-866.
    Resolution: Invalid

I started from scratch attempting to find a diagnosis for where the conflict is because my original diagnosis has proven to be incorrect. I'll re-file when I actually have something concrete. Sorry for jumping the gun

> poor performance of jar-with-dependencies when run in same run as docbook
> -------------------------------------------------------------------------
>                 Key: MASSEMBLY-866
>                 URL: https://issues.apache.org/jira/browse/MASSEMBLY-866
>             Project: Maven Assembly Plugin
>          Issue Type: Bug
>    Affects Versions: 3.0.0
>            Reporter: John Vines
>              Labels: performance
> I apologize for the lack of information, but we have a large build environment which I cannot share, but I'll try to explain things as best I can.
> In our full build path, we have 2 components that I've found have side effects. One is a doc build which uses the docbkx-maven-plugin (https://github.com/mimil/docbkx-tools) to generate documentation (and usually takes a while, ~27 minutes) and another which builds a jar-with-depends for our UI. Prior to upgrade the assembly plugin to 3.0.0 from 2.3 or 2.5 (I cannot recall) everything ran fine. After upgrading we found our jenkins builds taking about 40 more minutes, most of this change was in maven-assembly-plugin for that UI jar-with-dependencies
> {code}assembly-plugin:3.0.0:single (make-assembly) @ sqrrl-web-dist-ui ---
> 16:17:37 [INFO] Reading assembly descriptor: src/main/assembly/dist-ui.xml
> 16:17:40 [INFO] Building jar: /var/lib/jenkins/workspace/sqrrl-master-build/web/dist-ui/target/sqrrl-web-dist-ui-2.8.0-SNAPSHOT-jar-with-dependencies.jar
> 17:01:54 [INFO] {code}
> Eventually I isolated to a case where just that doc and that jar-with-deps being built would cause the jar-with-deps to take ~40 minutes, but if I built it by itself (all other maven options being equal) it would take about 1.5 minutes.
> I'm honestly not too familiar with the inner workings of this plugin, nor the maven docbook plugin, but my hunch was that the docbook plugin was 'corrupting' or otherwise altering the main maven jvm in such a way to cause this. It does use some really old plexus plugins, among others, afterall. However, I stumbled across MASSEMBLY-424 and tested forking maven-assembly-plugin:3.0.0 and updating plexus-archiver to 3.5, plexus-io to 3.0.0 and plexus-utils to 3.1.0 and ran my 2 module build with the custom plugin and it ran just as quick as being run standalone (1.5minutes). (To build it with those plugins I had to disable checkstyle and enforcer though since at least one of those plugins versions was java7)
> One last datapoint is that in our jar-with-deps we are including bouncycastle's bcpix and bcprov and explicitly excluding them from the jar-with-depends also made that 2 module build faster (but not as fast), so I'm not 100% sure it's the docbook plugin was the catalyst there.

This message was sent by Atlassian JIRA