IBM Support

JR46774: MULTIPLE JAVASCRIPTRUNNER EXCEPTIONS IN LOGS CAUSING TIMING ISSUES

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Large numbers of JavaScriptRunner exceptions are appearing in
    trace and system.out logs.
    These are having a negative on processes with timing-sensitive
    operations.
    Reproduction steps:
       1. Start a process instance of a BPD
           (it doesn't matter how the BPD looks, the problem occurs
    always)
       2. Execute a REST API call like this
    http://<host>:<port>/rest/bpm/wle/v1/process/<processInstanceID>
    ?federationMode=true
    Example stack trace:
    [5/7/13 13:07:10:748 CEST] 0000011f wle           W
    CWLLG0399W:
    JavaScriptRunner(...) nesting depth > 10 depth=28
    [5/7/13 13:07:10:749 CEST] 0000011f wle           W
    CWLLG0400W: Frame
    ''0'' was created by java.lang.Throwable
     at
     com.lombardisoftware.core.script.js.JavaScriptRunner$JavaScript
    RunnerFr
    ame.<init>(JavaScriptRunner.java:581)
     at
     com.lombardisoftware.core.script.js.JavaScriptRunner.<init>(Jav
    aScriptR
    unner.java:142)
     at
     com.lombardisoftware.bpd.runtime.engine.BPDExecutionContext.get
    JSScript
    Runner(BPDExecutionContext.java:331)
     at
     com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.ge
    tJSScrip
    tRunner(BPDExecutionTreeNode.java:581)
     at
     com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.ev
    aluateEx
    pression(BPDExecutionTreeNode.java:685)
     at
     com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.ev
    aluateEx
    pression(BPDExecutionTreeNode.java:655)
     at
     com.ibm.bpm.rest.jaxb.mapping.BPDMappingUtils$1.doExecuteDuring
    Lock(BPD
    MappingUtils.java:1345)
     at
     com.lombardisoftware.bpd.runtime.engine.util.LockBPDInstanceCom
    mand$1.d
    oInTransaction(LockBPDInstanceCommand.java:62)
     at
    com.lombardisoftware.server.core.TXCommand$2.call(TXCommand.java
    :85)
     at
     com.lombardisoftware.utility.spring.ProgrammaticTransactionSupp
    ort$1.do
    InTransaction(ProgrammaticTransactionSupport.java:427)
     at
     org.springframework.transaction.jta.WebSphereUowTransactionMana
    ger$UOWA
    ctionAdapter.run(WebSphereUowTransactionManager.java:306)
     at
     com.ibm.ws.uow.embeddable.EmbeddableUOWManagerImpl.runUnderNewU
    OW(Embed
    dableUOWManagerImpl.java:791)
     at
     com.ibm.ws.uow.embeddable.EmbeddableUOWManagerImpl.runUnderUOW(
    Embeddab
    leUOWManagerImpl.java:370)
     at
     org.springframework.transaction.jta.WebSphereUowTransactionMana
    ger.exec
    ute(WebSphereUowTransactionManager.java:252)
     at
     com.lombardisoftware.utility.spring.ProgrammaticTransactionSupp
    ort.exec
    uteInNewTransaction(ProgrammaticTransactionSupport.java:422)
     at
     com.lombardisoftware.utility.spring.ProgrammaticTransactionSupp
    ort.exec
    ute(ProgrammaticTransactionSupport.java:291)
     at
     com.lombardisoftware.server.core.TXCommand.executeInDeadlockRet
    ryLoop(T
    XCommand.java:83)
     at
     com.lombardisoftware.bpd.runtime.engine.util.LockBPDInstanceCom
    mand.exe
    cute(LockBPDInstanceCommand.java:74)
     at
     com.ibm.bpm.rest.jaxb.mapping.BPDMappingUtils.evaluateExpressio
    n(BPDMap
    pingUtils.java:1354)
     at
     com.ibm.bpm.rest.jaxb.mapping.BPDMappingUtils.describeBPDInstan
    ce(BPDMa
    ppingUtils.java:324)
     at
     com.ibm.bpm.rest.jaxb.mapping.BPDMappingUtils.describeBPDInstan
    ce(BPDMa
    ppingUtils.java:181)
     at
     com.ibm.bpm.rest.impl.process.StartActionHandler.handleAction(S
    tartActi
    onHandler.java:142)
     at
     com.ibm.bpm.rest.impl.process.BusinessProcessDefinitionResource
    .postPro
    cessActions(BusinessProcessDefinitionResource.java:590)
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     at
     sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccesso
    rImpl.ja
    va:60)
     at
     sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMetho
    dAccesso
    rImpl.java:37)
     at java.lang.reflect.Method.invoke(Method.java:611)
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Applications calling the REST Process       *
    *                  Instance API.                               *
    ****************************************************************
    * PROBLEM DESCRIPTION: Intermittently JavaScriptRunner         *
    *                      exceptions are seen in the logs.        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When running REST API Process Instance calls, it may
    potentially generate JavaScriptRunner exceptions in the logs.
    These warnings are harmless however may fill up system logs.
    The exception messages are caused by timing issues which
    explains why this happens intermittently.  The following stack
    may be seen from the system logs:
    CWLLG0400W: Frame
    ''0'' was created by java.lang.Throwable
    at
    com.lombardisoftware.core.script.js.JavaScriptRunner$JavaScriptR
    unnerFrame.<init>(JavaScriptRunner.java:581)
    at
    com.lombardisoftware.core.script.js.JavaScriptRunner.<init>(Java
    ScriptRunner.java:142)
    at
    com.lombardisoftware.bpd.runtime.engine.BPDExecutionContext.getJ
    SScriptRunner(BPDExecutionContext.java:331)
    

Problem conclusion

  • Code changes have been made to properly dispose of the
    JavaScriptRunners to prevent the warning messages from
    appearing. An interim fix is available on v7.5.1.0. The fix
    will be integrated into the next release.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR46774

  • Reported component name

    BPM ADVANCED

  • Reported component ID

    5725C9400

  • Reported release

    751

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-05-29

  • Closed date

    2013-07-31

  • Last modified date

    2013-07-31

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    BPM ADVANCED

  • Fixed component ID

    5725C9400

Applicable component levels

  • R750 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTN5","label":"IBM Business Process Manager Advanced"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5.1","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
31 July 2013