You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "István Székely (JIRA)" <ji...@apache.org> on 2011/06/14 13:59:47 UTC

[jira] [Commented] (WW-3461) Don't hold locks as long when creating validators in AnnotationActionValidatorManager

    [ https://issues.apache.org/jira/browse/WW-3461?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13049145#comment-13049145 ] 

István Székely commented on WW-3461:
------------------------------------

There is still an issue with locking in AnnotationActionValidatorManager in version 2.2.3. Further investigation is needed. I can provide you with a thread dump when our production server hangs again (it happens usually in less than 2 days).

> Don't hold locks as long when creating validators in AnnotationActionValidatorManager
> -------------------------------------------------------------------------------------
>
>                 Key: WW-3461
>                 URL: https://issues.apache.org/jira/browse/WW-3461
>             Project: Struts 2
>          Issue Type: Improvement
>    Affects Versions: 2.1.6
>            Reporter: Leigh Anderson
>            Assignee: Lukasz Lenart
>             Fix For: 2.2.3
>
>         Attachments: WW-3461.patch, validatormanager.patch
>
>
> Under load, the lock held in AnnotationActionValidatorManager.getValidators on validatorCache becomes contended. This lock is currently held while all the validators are created. The attached patch reduces the scope of the lock to just doing the cache lookup + taking a defensive copy of the list of validators for that key.  This improved throughput and latency in our tests.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira