[
https://issues.apache.org/jira/browse/GROOVY-9588?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17151365#comment-17151365
]
Daniel Sun commented on GROOVY-9588:
------------------------------------
Let me clarify the rationale of option {{groovy.antlr4.cache.threshold}} as
follows.
For example: if the threshold is 200, DFA cache will be cleared when 200 groovy
source files are parsed. Then the DFA cache will go on growing when more groovy
source files are parsed. again, DFA cache will cleared when 200 groovy source
files are parsed. *It is like a loop*.
So if heap size is enough, set {{-Dgroovy.antlr4.cache.threshold=0}} (means
never clearing DFA cache), or set {{-Dgroovy.antlr4.cache.threshold=<greater
number>}} if your machine do not have much memory, e.g.
{{-Dgroovy.antlr4.cache.threshold=200}}, then DFA cache will be cleared when
threshold reaches. Note: The default threshold is {{64}}
> groovyCompile 6x slower in 3.0.4 than 2.5.6
> -------------------------------------------
>
> Key: GROOVY-9588
> URL: https://issues.apache.org/jira/browse/GROOVY-9588
> Project: Groovy
> Issue Type: Bug
> Components: parser-antlr4
> Affects Versions: 3.0.4
> Reporter: Eric Helgeson
> Assignee: Daniel Sun
> Priority: Major
> Fix For: 4.0.0-alpha-1, 3.0.5
>
>
> _It was suggested I open an issue here as well. I am a user of groovy so do
> not know a lot of the details that could help diagnose. I would be happy to
> gather them if told what was required._
> [https://github.com/grails/grails-core/issues/11571]
> We are upgrading a large Grails app with 400+ controllers, 550+ services, 350
> domains, 4000 files with 950k loc to Grails 4.1.0.M1 + Gradle 5.6.4.
> Using Gradle 5.6.4 with Java 8 & Grails 4.0.3(Groovy 2.5) a
> clean/groovyCompile took approximately 5 minutes.
>
> Using Gradle 5.6.4 with Java 11 & Grails 4.1.0.M1(Groovy 3.0.4) a
> {{clean}}/{{groovyCompile}} takes 33 minutes on a 2019 MBP w/ 2.4 GHz 8-Core
> Intel Core i9 & 64gb of RAM.
> I have tried giving the groovyCompile task 16/32gb of ram, with no noticeable
> change. I've also tried -Dgroovy.antlr4=false - but this gave other compile
> time errors I did not see with it set to true (so was unable to have a full
> successful compile)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)