myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Leonardo Uribe (Commented) (JIRA)" <>
Subject [jira] [Commented] (MYFACES-3474) [perf] LifecycleProviderFactory does not cache created Factory
Date Sat, 25 Feb 2012 16:11:49 GMT


Leonardo Uribe commented on MYFACES-3474:

I have to say it: Martin, you have found a very, very, very insteresting thing. I tried it
and you are right. 

This few lines has a huge impact on performance. I reviewed all other SPI interfaces and does
not have the problem, so it was just this class. Some months ago I detected a problem in this
area, but instead check this class I optimize LifecycleProvider related interfaces, so I skipped
this part. 

This finding is just great!.

I agree maybe this issue has something to do with the slow response time. Thanks a lot for
the patch. This is a very valuable contribution.
> [perf] LifecycleProviderFactory does not cache created Factory
> --------------------------------------------------------------
>                 Key: MYFACES-3474
>                 URL:
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.0.12, 2.1.6
>            Reporter: Martin Kočí
>            Assignee: Martin Kočí
>             Fix For: 1.2.12, 2.0.13, 2.1.7
>         Attachments: MYFACES-3474.patch
> It seems that
> org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(FacesContext, ManagedBean)
tries to locale implementation of a interface, but the instance found is never stored in application
map: see code in org.apache.myfaces.config.annotation.LifecycleProviderFactory.getLifecycleProviderFactory(ExternalContext)
> this lead to Webappclassloader.loadClass invocation, which is sychronized and accesses
> Can significantly affect perfomance of myfaces app with managed-bean in multithreaded
> maybe reason for ?

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message