struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Falko Modler (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (WW-3580) Critical performance issue in production environment as thread dumps are leading to OGNL 3.0 thread blocking! Website could be backed out!
Date Thu, 13 Oct 2011 16:57:12 GMT

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

Falko Modler commented on WW-3580:
----------------------------------

It seems impossible to find detailed changelogs/release notes for ognl versions since 3.0.
We are on Struts2 2.2.3.1 which uses ognl 3.0.1. So before switching to 3.0.3, I'd like to
know what has been changed since 3.0.1 (except this performance issue).

These are the most recent release notes I could find:
http://jira.opensymphony.com/secure/ReleaseNote.jspa?version=21770&styleName=Text&projectId=10090&Create=Create
But this is just 3.0.

The incubator JIRA does not contain versions and only seems to target 4.0 and upwards:
https://issues.apache.org/jira/browse/OGNL

Very confusing...
                
> Critical performance issue in production environment as thread dumps are leading to OGNL
3.0 thread blocking! Website could be backed out!
> ------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: WW-3580
>                 URL: https://issues.apache.org/jira/browse/WW-3580
>             Project: Struts 2
>          Issue Type: Bug
>         Environment: Struts 2.2.1
>            Reporter: Shishir Saxena
>            Assignee: Lukasz Lenart
>            Priority: Blocker
>             Fix For: 2.3
>
>         Attachments: OGNLIssue.zip, Small_bugfix_on_the_performance_patch_provided_in_WW-3580_.patch,
ognl-synchronization.diff, stacktrace_ognl_issue.txt
>
>
> My web application based on Struts 2.2.1 is using OGNL 3.0. This web application is rolled
into production; however, due to serious performance considerations the website is in danger
of being rolled back. The thread dumps indicate 'BLOCKING' at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:804).
> The thread trace is as:
> &quot;httpSSLWorkerThread-6357-6&quot; daemon prio=3 tid=0x01a07000 nid=0xa6
waiting for monitor entry [0xb6d79000..0xb6d7faf0]
>    java.lang.Thread.State: BLOCKED (on object monitor)
> at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:804)
> - waiting to lock &lt;0xcca6d328&gt; (a java.lang.reflect.Method)
> at ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1434)
> at ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60)
> at ognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:147)
> at com.opensymphony.xwork2.ognl.accessor.ObjectAccessor.getProperty(ObjectAccessor.java:17)
> at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2230)
> at com.opensymphony.xwork2.ognl.accessor.CompoundRootAccessor.getProperty(CompoundRootAccessor.java:137)
> at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2230)
> at ognl.ASTProperty.getValueBody(ASTProperty.java:114)
> at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
> at ognl.SimpleNode.getValue(SimpleNode.java:258)
> at ognl.Ognl.getValue(Ognl.java:494)
> at ognl.Ognl.getValue(Ognl.java:458)
> at com.opensymphony.xwork2.ognl.OgnlUtil.getValue(OgnlUtil.java:213)
> at com.opensymphony.xwork2.ognl.OgnlValueStack.getValueUsingOgnl(OgnlValueStack.java:277)
> at com.opensymphony.xwork2.ognl.OgnlValueStack.tryFindValue(OgnlValueStack.java:260)
> at com.opensymphony.xwork2.ognl.OgnlValueStack.tryFindValueWhenExpressionIsNotNull(OgnlValueStack.java:242)
> at com.opensymphony.xwork2.ognl.OgnlValueStack.findValue(OgnlValueStack.java:222)
> at com.opensymphony.xwork2.ognl.OgnlValueStack.findValue(OgnlValueStack.java:284)
> at sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source)
> ....
> quot;httpSSLWorkerThread-6357-4&quot; daemon prio=3 tid=0x01a56800 nid=0xa4 runnable
[0xb6f79000..0xb6f7fbf0]
>    java.lang.Thread.State: RUNNABLE
> at java.security.AccessController.$$YJP$$doPrivileged(Native Method)
> at java.security.AccessController.doPrivileged(AccessController.java)
> at com.sun.enterprise.security.provider.PolicyFile.addPermissions(PolicyFile.java:1333)
> at com.sun.enterprise.security.provider.PolicyFile.getPermissions(PolicyFile.java:1290)
> at com.sun.enterprise.security.provider.PolicyFile.getPermissions(PolicyFile.java:1256)
> at com.sun.enterprise.security.provider.PolicyFile.getPermissions(PolicyFile.java:1198)
> at com.sun.enterprise.security.provider.PolicyFile.implies(PolicyFile.java:1153)
> at com.sun.enterprise.security.provider.BasePolicyWrapper.doImplies(BasePolicyWrapper.java:383)
> at com.sun.enterprise.security.provider.BasePolicyWrapper.implies(BasePolicyWrapper.java:237)
> at java.security.ProtectionDomain.implies(ProtectionDomain.java:213)
> at java.security.AccessControlContext.checkPermission(AccessControlContext.java:301)
> at java.security.AccessController.checkPermission(AccessController.java:546)
> at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
> at java.lang.reflect.AccessibleObject.setAccessible(AccessibleObject.java:107)
> at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:839)
> - locked &lt;0xcca6d328&gt; (a java.lang.reflect.Method)
> at ognl.OgnlRuntime.getMethodValue(OgnlRuntime.java:1434)
> at ognl.ObjectPropertyAccessor.getPossibleProperty(ObjectPropertyAccessor.java:60) 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message