IBM Support

PM36141: WCM STACKOVERFLOWERROR CAUSED BY A RACE CONDITION TRIGGERS AN INFINITE RECURSIVE QUERY.

 

APAR status

  • Closed as program error.

Error description

  • WCM StackOverflowError caused by a race condition triggers an
    infinite recursive query.
    
    In this case, WCM Content Items were unable to be modified or
    deleted due to the reference exceptions and StackOverFlowError
    
    
    Example:
    
    [3/31/11 20:45:53:959 CEST] 000000e6 AbstractComma E   <Null
    Message>
    java.lang.StackOverflowError
        at
    com.ibm.ejs.j2c.PoolManager.reserve(PoolManager.java:2010)
        at
    com.ibm.ejs.j2c.ConnectionManager.allocateMCWrapper(ConnectionMa
    nager.ja
    va:937)
        at
    com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionM
    anager.j
    ava:611)
        at
    com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcD
    ataSourc
    e.java:449)
        at
    com.ibm.ws.rsadapter.jdbc.WSJdbcDataSource.getConnection(WSJdbcD
    ataSourc
    e.java:418)
        at
    com.ibm.icm.ci.Datastore$DataSource.getConnection(Datastore.java
    :596)
        at
    com.ibm.icm.ci.ConnectionService.getConnection(ConnectionService
    .java:93
    )
        at
    com.ibm.icm.ci.data.impl.PathService._acquireDataManager(PathSer
    vice.jav
    a:1645)
        at
    com.ibm.icm.ci.data.impl.PathService._executeGetLinks(PathServic
    e.java:1
    357)
        at
    com.ibm.icm.ci.data.impl.PathService._getLinks(PathService.java:
    1296)
        at
    com.ibm.icm.ci.data.impl.PathService._getItemsOnPathList(PathSer
    vice.jav
    a:1028)
        at
    com.ibm.icm.ci.data.impl.PathService.retrieveContent(PathService
    .java:83
    9)
        at
    com.ibm.icm.ci.data.impl.PathService.retrieveContent(PathService
    .java:17
    55)
        at com.ibm.icm.jcr.NodeImpl.getNode(NodeImpl.java:1073)
        at com.ibm.icm.jcr.NodeImpl.getNode(NodeImpl.java:1004)
        at com.ibm.icm.jcr.NodeImpl.getNode(NodeImpl.java:995)
        at com.ibm.icm.jcr.NodeImpl.getNode(NodeImpl.java:987)
        at
    com.ibm.workplace.wcm.domain.transformers.controllable.CmpntRefe
    renceTra
    nsformer.implodeControllable(CmpntReferenceTransformer.java:151)
        at
    com.ibm.workplace.wcm.domain.transformers.controllable.CmpntTran
    sformer.
    implode(CmpntTransformer.java:501)
        at
    com.ibm.workplace.wcm.domain.transformers.TransformerUtils.trans
    formNode
    (TransformerUtils.java:1637)
        at
    com.ibm.workplace.wcm.domain.transformers.CmpntMapTransformUtils
    .implode
    CmpntMap(CmpntMapTransformUtils.java:275)
        at
    com.ibm.workplace.wcm.domain.transformers.CmpntMapTransformUtils
    .implode
    CmpntMap(CmpntMapTransformUtils.java:247)
        at
    com.ibm.workplace.wcm.domain.transformers.controllable.ContentTr
    ansforme
    r.implodeControllable(ContentTransformer.java:367)
        at
    com.ibm.workplace.wcm.domain.transformers.controllable.AbstractC
    ontrolla
    bleTransformer.implode(AbstractControllableTransformer.java:332)
        at
    com.ibm.workplace.wcm.domain.transformers.TransformerUtils.trans
    formNode
    (TransformerUtils.java:1637)
        at
    com.ibm.workplace.wcm.services.repository.RepositoryServiceImpl.
    getByUUI
    D(RepositoryServiceImpl.java:1333)
        at
    com.ibm.workplace.wcm.services.repository.RepositoryServiceImpl.
    getByUUI
    D(RepositoryServiceImpl.java:1250)
        at
    com.ibm.workplace.wcm.services.repository.RepositoryServiceImpl.
    get(Repo
    sitoryServiceImpl.java:387)
        at
    com.ibm.workplace.wcm.services.content.ContentServiceImpl.getImp
    l(Conten
    tServiceImpl.java:2046)
        at
    com.ibm.workplace.wcm.services.content.ContentServiceImpl.getImp
    l(Conten
    tServiceImpl.java:1889)
        at
    com.ibm.workplace.wcm.services.content.ContentServiceImpl.get(Co
    ntentSer
    viceImpl.java:1801)
        at
    com.aptrix.pluto.cmpnt.link.ContentLinkReference.getResourceType
    ContentI
    tem(ContentLinkReference.java:680)
        at
    com.aptrix.pluto.cmpnt.link.ContentLinkReference.<init>(ContentL
    inkRefer
    ence.java:97)
    

Local fix

Problem summary

  • An infinite recursive loop was triggered when an element within
    a content, is linked to the content itself.
    

Problem conclusion

  • Code was updated to prevent this issue.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM36141

  • Reported component name

    LOTUS WEB CONT

  • Reported component ID

    5724I2900

  • Reported release

    610

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-04-03

  • Closed date

    2011-06-17

  • Last modified date

    2011-06-17

  • 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

    LOTUS WEB CONT

  • Fixed component ID

    5724I2900

Applicable component levels

  • R61C PSY

       UP

  • R610 PSY

       UP

  • R615 PSY

       UP

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU051","label":"N\/A"},"Product":{"code":"SUPPORT","label":"IBM Web Content Manager"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.1","Line of Business":{"code":"LOB33","label":"N\/A"}}]

Document Information

Modified date:
21 December 2021