[ https://issues.apache.org/jira/browse/GROOVY-7407?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17913116#comment-17913116 ]
ASF GitHub Bot commented on GROOVY-7407: ---------------------------------------- codecov-commenter commented on PR #2142: URL: https://github.com/apache/groovy/pull/2142#issuecomment-2591404849 ## [Codecov](https://app.codecov.io/gh/apache/groovy/pull/2142?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report All modified and coverable lines are covered by tests :white_check_mark: > Project coverage is 68.8290%. Comparing base [(`de5ff81`)](https://app.codecov.io/gh/apache/groovy/commit/de5ff81e020b25289c2eba8f245d46118e3c799f?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) to head [(`be537f3`)](https://app.codecov.io/gh/apache/groovy/commit/be537f3adc8505edb46dab472ef2823a9543c5b5?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache). <details><summary>Additional details and impacted files</summary> [](https://app.codecov.io/gh/apache/groovy/pull/2142?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) ```diff @@ Coverage Diff @@ ## master #2142 +/- ## ================================================== + Coverage 68.8220% 68.8290% +0.0071% - Complexity 29434 29435 +1 ================================================== Files 1420 1420 Lines 113147 113147 Branches 19544 19544 ================================================== + Hits 77870 77878 +8 + Misses 28738 28732 -6 + Partials 6539 6537 -2 ``` [see 3 files with indirect coverage changes](https://app.codecov.io/gh/apache/groovy/pull/2142/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) </details> > Compilation not thread safe if Grape / Ivy is used in Groovy scripts > -------------------------------------------------------------------- > > Key: GROOVY-7407 > URL: https://issues.apache.org/jira/browse/GROOVY-7407 > Project: Groovy > Issue Type: Bug > Components: Compiler, Grape > Affects Versions: 2.4.3 > Environment: Essentially independent of the environment, as long as > Groovy scripts use Grape; also this bug seems to be present since at least > Groovy 1.7.5. > Reporter: Jex Jexler > Priority: Minor > Labels: Compile, Grape, Groovy, Ivy > Attachments: GROOVY-7407-Jenkins-Pipeline.txt, > GrabConcurrencyTest.java, GrapeAndGroovyShellConcurrencyTest.java, > GroovyCompileConcurrencyTest.java, > WorkaroundGroovy7407WrappingGrapeEngine.java, > stacktrace-GrapeAndGroovyShellConcurrencyTest-1.txt, > stacktrace-GrapeAndGroovyShellConcurrencyTest-2.txt, > stacktrace-GroovyCompileConcurrencyTest-1.txt, > stacktrace-GroovyCompileConcurrencyTest-2.txt > > > If Groovy scripts that import the same libraries via Grape are compiled in > separate threads, compilation may fail due to race conditions. > This does not happen if several threads use the *same* instance of > GroovyClassLoader (GCL), because parseClass() uses synchronization. > But as soon as different GCLs are used in separate threads or if the compiler > is used directly (CompilationUnit.compile()), the issue occurs and > compilation can fail. > Two Java unit tests have be attached, which reproduce the issue, although > this cannot be guaranteed with 100% certainty, because there is a race > condition. > Two different stacktraces have been observed for each unit test (with origins > in Grape and in Ivy), which have also been attached (plus in a different > environment (Tomcat webapp CentOS) once a an exception down in Ivy had been > observed that seemed to be related to unzipping a JAR file, but no precise > record of that exists any more). -- This message was sent by Atlassian Jira (v8.20.10#820010)