IBM Support

PM94958: Optimistic lock check fails during rollback for maps with eXtremeMemory (XM) enabled.

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • When eXtremeMemory is enabled on maps using optimistic locking
    and some condition causes a transaction rollback to take
    place, the rollback might fail with the following
    OptimisticCollisionException:
    
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:Optimistic version comparison indicates another transaction
    already changed this cache entry.
    com.ibm.websphere.objectgrid.TransactionException: rolling
    back transaction, see caused by exception
    at
    com.ibm.ws.objectgrid.SessionImpl.rollbackPMapChanges(SessionImp
    l.java:2533)
    at
    com.ibm.ws.objectgrid.SessionImpl.commit(SessionImpl.java:2130)
    at
    com.ibm.ws.objectgrid.SessionImpl.mapPostInvoke(SessionImpl.java
    :3681)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.postInvoke(ObjectMapImpl.jav
    a:888)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.update(ObjectMapImpl.java:15
    17)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.update(ObjectMapImpl.java:14
    59)
    ...
    Caused by:
    com.ibm.websphere.objectgrid.ClientServerTransactionCallbackExce
    ption: Client Services - Exception during commit processing:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    DefaultDomain:accounting:mapSet2:4
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteAsyncRequest(RemoteTransactionCallbackImpl.java:1668)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteRequestAndResponse(RemoteTransactionCallbackImpl.java
    :1466)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.commi
    t(RemoteTransactionCallbackImpl.java:332)
    at
    com.ibm.ws.objectgrid.SessionImpl.commit(SessionImpl.java:2035)
    ... 5 more
    Caused by:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    DefaultDomain:accounting:mapSet2:4
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:813)
    at
    com.ibm.ws.objectgrid.client.CommonClientCoreMessageHandler.send
    ReadWriteRequest(CommonClientCoreMessageHandler.java:443)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteAsyncRequest(RemoteTransactionCallbackImpl.java:1637)
    ... 8 more
    Caused by:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:819)
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:633)
    ... 10 more
    Caused by: com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    RemovedByServerSerialization.RemovedByServerSerialization(Remove
    dByServerSerialization:0)
    Caused by:
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:Optimistic version comparison indicates another transaction
    already changed this cache entry. ObjectGrid: accounting,
    BackingMap: payroll2, Cache entry: KeyDataDirectImpl:
    {key3:9}, initial version ValueDataImpl: {ValueA9}, current
    version ValueDataImpl: {null}
    ... 1 more
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  WebSphere eXtreme Scale customers using     *
    *                  optimistic locking maps with eXtremeMemory  *
    *                  enabled                                     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Optimistic lock check fails during      *
    *                      rollback for maps with eXtremeMemory    *
    *                      enabled.                                *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    For eXtremeMemory maps, an OptimisticCollisionException
    might occur when a transaction is rolled back.  This might
    happen even when the map entry has not been updated by another
    transaction.
    The exception is similar to the following example:
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:Optimistic version comparison indicates another transaction
    already changed this cache entry.
    com.ibm.websphere.objectgrid.TransactionException: rolling
    back transaction, see caused by exception
    at
    com.ibm.ws.objectgrid.SessionImpl.rollbackPMapChanges(SessionImp
    l.java:2533)
    at
    com.ibm.ws.objectgrid.SessionImpl.commit(SessionImpl.java:2130)
    at
    com.ibm.ws.objectgrid.SessionImpl.mapPostInvoke(SessionImpl.java
    :3681)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.postInvoke(ObjectMapImpl.jav
    a:888)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.update(ObjectMapImpl.java:15
    17)
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.update(ObjectMapImpl.java:14
    59)
    ...
    Caused by:
    com.ibm.websphere.objectgrid.ClientServerTransactionCallbackExce
    ption: Client Services - Exception during commit processing:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    DefaultDomain:accounting:mapSet2:4
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteAsyncRequest(RemoteTransactionCallbackImpl.java:1668)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteRequestAndResponse(RemoteTransactionCallbackImpl.java
    :1466)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.commi
    t(RemoteTransactionCallbackImpl.java:332)
    at
    com.ibm.ws.objectgrid.SessionImpl.commit(SessionImpl.java:2035)
    ... 5 more
    Caused by:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    DefaultDomain:accounting:mapSet2:4
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:813)
    at
    com.ibm.ws.objectgrid.client.CommonClientCoreMessageHandler.send
    ReadWriteRequest(CommonClientCoreMessageHandler.java:443)
    at
    com.ibm.ws.objectgrid.client.RemoteTransactionCallbackImpl.proce
    ssReadWriteAsyncRequest(RemoteTransactionCallbackImpl.java:1637)
    ... 8 more
    Caused by:
    com.ibm.websphere.objectgrid.ObjectGridRuntimeException:
    com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:819)
    at
    com.ibm.ws.objectgrid.client.XIOClientCoreMessageHandler.sendMes
    sage(XIOClientCoreMessageHandler.java:633)
    ... 10 more
    Caused by: com.ibm.websphere.objectgrid.TransactionException:
    com.ibm.websphere.objectgrid.TransactionException:transaction
    rolled back, see caused by Throwable
    at
    RemovedByServerSerialization.RemovedByServerSerialization(Remove
    dByServerSerialization:0)
    Caused by:
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:
    com.ibm.websphere.objectgrid.plugins.OptimisticCollisionExceptio
    n:Optimistic version comparison indicates another transaction
    already changed this cache entry. ObjectGrid: accounting,
    BackingMap: payroll2, Cache entry: KeyDataDirectImpl:
    {key3:9}, initial version ValueDataImpl: {ValueA9}, current
    version ValueDataImpl: {null}
    ... 1 more
    

Problem conclusion

  • The OptimisticCollisionException only occurs when multiple
    transactions have simultaneously modified the same entry.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM94958

  • Reported component name

    WS EXTREME SCAL

  • Reported component ID

    5724X6702

  • Reported release

    860

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-08-12

  • Closed date

    2013-08-23

  • Last modified date

    2013-08-23

  • 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

    WS EXTREME SCAL

  • Fixed component ID

    5724X6702

Applicable component levels

  • R860 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSTVLU","label":"WebSphere eXtreme Scale"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"860","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
23 August 2013