Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
Scripting JavaScript 2.0.16
-
None
Description
Bug 738388 from Rhino seems to affect Sling instances during startup due to its potential deadlock. The bug was fixed in Rhino 1.7R5, while org.apache.sling.scripting.javascript still embeds 1.7R4. Due to the numerous improvements of the 1.7.7 release over 1.7R4 I propose to update the dependency to 1.7.7.
One of the stuck threads pointing at the Rhino 738388 bug provides the following stack trace:
"10.10.150.15 [1435169509358] GET /content/geometrixx-media/en/longevity/longevity-18/longevity-18-6.html HTTP/1.1" prio=10 tid=0x000000000ef40800 nid=0x2507 runnable [0x00000000541be000 ] java.lang.Thread.State: RUNNABLE at java.util.HashMap.getEntry(HashMap.java:465) at java.util.HashMap.get(HashMap.java:417) at org.mozilla.javascript.JavaMembers.lookupClass(JavaMembers.java:797) at org.mozilla.javascript.NativeJavaObject.initMembers(NativeJavaObject.java:54) at org.mozilla.javascript.NativeJavaObject.<init>(NativeJavaObject.java:44) at org.mozilla.javascript.NativeJavaObject.<init>(NativeJavaObject.java:34) at org.mozilla.javascript.WrapFactory.wrapAsJavaObject(WrapFactory.java:115) at org.mozilla.javascript.WrapFactory.wrap(WrapFactory.java:72) at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:236) at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1473) at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091) at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:107) at org.apache.sling.scripting.sightly.js.impl.jsapi.SlyBindingsValuesProvider.addBinding(SlyBindingsValuesProvider.java:162) at org.apache.sling.scripting.sightly.js.impl.jsapi.SlyBindingsValuesProvider.processBindings(SlyBindingsValuesProvider.java:125) at org.apache.sling.scripting.sightly.js.impl.JsUseProvider.provide(JsUseProvider.java:84) at org.apache.sling.scripting.sightly.impl.engine.extension.use.UseRuntimeExtension.call(UseRuntimeExtension.java:87) at org.apache.sling.scripting.sightly.impl.engine.runtime.RenderContextImpl.call(RenderContextImpl.java:89) at libs.wcm.foundation.components.parsys.newpar.SightlyJava_newpar.render(SightlyJava_newpar.java:39) at org.apache.sling.scripting.sightly.impl.engine.runtime.RenderUnit.render(RenderUnit.java:52) at org.apache.sling.scripting.sightly.impl.engine.SightlyScriptEngine.evaluateScript(SightlyScriptEngine.java:95) at org.apache.sling.scripting.sightly.impl.engine.SightlyScriptEngine.eval(SightlyScriptEngine.java:83) at org.apache.sling.scripting.core.impl.DefaultSlingScript.call(DefaultSlingScript.java:361) at org.apache.sling.scripting.core.impl.DefaultSlingScript.eval(DefaultSlingScript.java:171) at org.apache.sling.scripting.core.impl.DefaultSlingScript.service(DefaultSlingScript.java:463) at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:533) at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)