]
Shane Bryzak updated SOLDER-69:
-------------------------------
Status: Resolved (was: Pull Request Sent)
Fix Version/s: 3.0.0.Beta3
Resolution: Done
Applied patch to master
Solder Messages are *extremely* slow in AnnotatedTypeBuilder and
AnnotationBuilder, should be static
----------------------------------------------------------------------------------------------------
Key: SOLDER-69
URL:
https://issues.jboss.org/browse/SOLDER-69
Project: Seam Solder
Issue Type: Bug
Components: Reflections
Affects Versions: 3.0.0.Beta2
Reporter: Lincoln Baxter III
Assignee: Shane Bryzak
Priority: Critical
Fix For: 3.0.0.Beta3
According to my YourKit profile of Seam Forge bootstrap, the following message bundle
lookup is responsible for roughly 80% of boot-up time, just from all the instances of
AnnotationBuilder and related classes that solder creates on every Weld bootstrap.
Obviously this could be simply removed and replaced with non-i18n messages, or these
messages could be cached and loaded in a more performant manner... IMO, this is going to
be a huge problem with messages. JBoss logging is slow, but message bundle lookup is much
slower.
The two offenders are the following methods - consider making them static, since this
only needs to be done once per JVM:
public class AnnotationBuilder
{
private transient static AnnotatedMessages messages =
Messages.getBundle(AnnotatedMessages.class);
...
}
public class AnnotatedTypeBuilder<T>
{
private transient static AnnotatedMessages messages =
Messages.getBundle(AnnotatedMessages.class);
...
}
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: