[
https://issues.apache.org/jira/browse/FREEMARKER-80?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16193506#comment-16193506
]
Shevek commented on FREEMARKER-80:
----------------------------------
Thank you, we're a gradle build, so I'll have a go with a snapshot release
later and see what happens. Our process will take about 10 (perhaps 6 if issue
is fixed) hours to run once I start it.
> Performance bottleneck (from profiling)
> ---------------------------------------
>
> Key: FREEMARKER-80
> URL: https://issues.apache.org/jira/browse/FREEMARKER-80
> Project: Apache Freemarker
> Issue Type: Bug
> Components: engine
> Affects Versions: 2.3.26-incubating
> Environment: Linux, Java 8
> Reporter: Shevek
>
> Major performance bottleneck running on a 32-core system, limits effective
> number of threads to about 6: PropertyDescriptor.getReadMethod() is
> synchronized, and blocks other threads. Partial stack follows:
> java.beans.PropertyDescriptor.getReadMethod()
> BeanModel.invokeThroughDescriptor()
> BeanModel.get()
> Dot._eval()
> I suspect there's a workaround with using a method call directly in the FTL
> template, but I haven't figured it out yet. However, this is killing our
> performance. With Velocity, at the cost of a slower renderer, we can run all
> 32 cores, and get the job done faster.
> I'm not entirely sure how to figure out which piece of FTL is causing this
> stack.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)