Rainer Podlas created GROOVY-10454:
--------------------------------------
Summary: Performance issue with "Parrot" parser in Groovy 3.x
Key: GROOVY-10454
URL: https://issues.apache.org/jira/browse/GROOVY-10454
Project: Groovy
Issue Type: Bug
Components: parser-antlr4
Affects Versions: 3.0.9
Environment: OpenJdk on Windows & Linux
Reporter: Rainer Podlas
We have recently upgraded from Groovy 2.4.3 to Groovy 3.0.9 and are now facing
a big performance issue when loading/parsing our Groovy sources.
In one concrete example we talk about 60 Groovy source files. Loading them with
Groovy 2.4.3 takes < 40 seconds, whereas loading the same sources with Groovy
3.0.9 takes twice the time (~1:20). In another example we notice increased
parsing duration from ~ 1,5 minutes to 3 minutes, again a doubling of the
duration.
In the release notes I read about the new "Parrot" parser, and indeed, once I
disable it via "{*}groovy.antlr4=false{*}" the parsing duration is "back to
normal".
That means for now we have a workaround, but as the new "Parrot" parser is
going to be the one and only in Groovy 4.x we will be facing a problem in the
new future ;-(
Is this performance drop a known issue? I could not find any related tickets?
Please note that we are loading the Groovy sources via the
"{*}groovy.lang.GroovyClassLoader{*}" and the method call: "{*}loadClass(path,
true, false, true);{*}"
Looking forward to receiving feedback on that.
Thank you very much!
Kind regards, Rainer
--
This message was sent by Atlassian Jira
(v8.20.1#820001)