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

Ian Boston commented on SLING-3317:
-----------------------------------

Fixed by upgrading to 6.0.30, verified the fix in that version to be identical 
to the patch supplied and tested. Verified that the upgrade doesn't change any 
external dependencies as the jar that is changed is embedded. Since this is a 
sub minor version upgrade, no other components should have to change. Best to 
leave for a few days to see if this change causes any unexpected issues 
elsewhere which OSGi was not able to prevent. (ie leaked implementation details 
in Jasper).

> Concurrent access to WeakHashMap in ConcurrentCache causes infinite loop, 
> 100% CPU usage
> ----------------------------------------------------------------------------------------
>
>                 Key: SLING-3317
>                 URL: https://issues.apache.org/jira/browse/SLING-3317
>             Project: Sling
>          Issue Type: Bug
>          Components: Scripting
>            Reporter: Takahito Kikuchi
>            Assignee: Ian Boston
>             Fix For: Scripting JSP 2.3.4
>
>
> On a web application with Apache Sling Scripting JSP 2.0.24, 100% CPU usage 
> problem happened as following. It looks similar to the tomcat problem, 
> https://issues.apache.org/bugzilla/show_bug.cgi?id=50078
> ----
>    java.lang.Thread.State: RUNNABLE
>       at java.util.WeakHashMap.get(WeakHashMap.java:470)
>       at org.apache.el.util.ConcurrentCache.get(ConcurrentCache.java:24)
>       at 
> org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:90)
>       at 
> org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:146)
>       at 
> org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:190)
>       at 
> org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:68)
>       at 
> org.apache.sling.scripting.jsp.jasper.el.ExpressionEvaluatorImpl.parseExpression(ExpressionEvaluatorImpl.java:45)
>       at 
> org.apache.sling.scripting.jsp.jasper.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:55)
> ----
>    java.lang.Thread.State: RUNNABLE
>       at java.util.WeakHashMap.eq(WeakHashMap.java:343)
>       at java.util.WeakHashMap.put(WeakHashMap.java:521)
>       at java.util.WeakHashMap.putAll(WeakHashMap.java:640)
>       at org.apache.el.util.ConcurrentCache.put(ConcurrentCache.java:34)
>       at 
> org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:123)
>       at 
> org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:146)
>       at 
> org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:190)
>       at 
> org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:68)
>       at 
> org.apache.sling.scripting.jsp.jasper.el.ExpressionEvaluatorImpl.parseExpression(ExpressionEvaluatorImpl.java:45)
>       at 
> org.apache.sling.scripting.jsp.jasper.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:55)
> ----



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to