[ https://issues.apache.org/jira/browse/MNG-5750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14974867#comment-14974867 ]
Alexander Ashitkin commented on MNG-5750: ----------------------------------------- With different kind of debug logging im ready to provide problem statement. h4. Symptoms # failures in mojo executions - see examples above h4. Problem Trigger # aggregator mojo is present in the build. In our case it were numerous maven-install-plugin:install-file executions # multithreaded build h4. Coot cause # BuildListCalculator: Maven sessions are created over shared MavenProject instances # maven sessions being executed concurrently # in a case of aggregator mojo session could mutate projects executing concurrently # lack of synchronization and state validations in MavenProject class access Shortly - looks like aggregator mojos support is not implemented properly in multithreaded builds. thank you > Sporadic failures in concurrent build > ------------------------------------- > > Key: MNG-5750 > URL: https://issues.apache.org/jira/browse/MNG-5750 > Project: Maven > Issue Type: Bug > Components: General > Affects Versions: 3.1.1, 3.2.1, 3.2.2, 3.2.5 > Environment: SLES 3.0.80-0.7-default SMP x86_64 GNU/Linux Oracle > HotSpot JDK 7u25 > windows server 2008 x64 Oracle HotSpot JDK 7u65/8u25 > Reporter: Alexander Ashitkin > Priority: Critical > > We have a large project of 300+ modules which regularly fails with different > kind of errors in different places. The issue is reliably reproduced with > parallel build and is not happens in single threaded. The optimal concurrency > level for our project ~10 threads. At this level ~%20 of builds fail. To > workaround the issue we reduced concurrency to 4 in development builds and > reverted production build to 1 thread. > Main point of failures: > # Surefire ClassNotFound. Reported and investigated in SUREFIRE-1132. Points > to a problem with MavenProject#getArtifacts - empty set unexpectedly returned. > # Compiler - unexpected failure because of incorrect classpath (literally all > dependencies are not on the classpath), like: {code} > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[3,30] package ... > does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[4,30] package ... > does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[8,25] package ... > does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[9,21] package > org.joda.time does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[11,37] package > com.google.common.base does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[11,1] static > import only from classes and interfaces > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[12,37] package > com.google.common.base does not exist > 20:20:54 [ERROR] /D:/jenkins/work/workspace/..Request.java:[12,1] static > import only from classes and interfaces > {code} > # Jar - unexpected NPE. Reported with stack traces in MJAR-192. (assembly > plusgin seems to be also affected) > At this point the issue looks like problem with MavenProject#getArtifacts in > concurrent builds. > To help with the issue im happy to implement or evaluate any custom assembly > to trace this down. Unfortunately i cannot submit my project - it is > proprietary. > Thanks in advance, Alexander -- This message was sent by Atlassian JIRA (v6.3.4#6332)