IBM Support

PM45922: CONCURRENTMODIFICATIONEXCEPTION WHEN ITERATING OVER THE LIST OF DATAOBJECTS FOR A MANY-VALUED PROPERTY.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A ConcurrentModificationException should be thrown if
    the list over which it is currently iterating is modified
    structurally - that is, items are added or removed. But the SDO
    implementation is a bit too sensitive, and it is triggering
    this exception even when a property of one of the DataObjects
    in the list is changed.
    

Local fix

  • using the CopyOnWriteArrayList because it does not use an
    iterator over the original List, and it is correct to iterate
    over this list in this way because the structure is not
    actually changing.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of WebSphere Application Server v7    *
    *                  Feature Pack for Service Component          *
    *                  Architecture (SCA) Refresh Pack v1.0.1      *
    ****************************************************************
    * PROBLEM DESCRIPTION: ConcurrentModificationException when    *
    *                      iterating an SDO list                   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When iterating over the list of DataObjects for a many-valued
    property of a complex type, a ConcurrentModificationException
    may be thrown if any of the DataObjects in the list are
    modified, for example, by setting a property.
    A ConcurrentModificationException should be thrown if the list
    is modified structurally by adding, removing, or replacing
    DataObjects, but simply setting a property of one of the
    original DataObjects should not cause this exception.
    Currently, this type of modification causes changes in the
    internal SDO list implementation that, to an Iterator, will
    appear to be structural in nature. In response, an Iterator
    may raise a ConcurrentModificationException.
    

Problem conclusion

  • The list implementation has been corrected such that setting a
    property on a DataObject within a list will not result
    observable changes that an Iterator may assume to be structural.
    
    APAR PM45922 is currently targeted for inclusion in Service
    Level (Fix Pack) 1.0.1.13 of WebSphere Application Server v7
    Feature Pack for Service Component Architecture (SCA) Refresh
    Pack. Please refer to the Recommended Updates page for
    delivery information:
    http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM45922

  • Reported component name

    WAS SCA FEATURE

  • Reported component ID

    5724J0854

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-08-17

  • Closed date

    2011-09-07

  • Last modified date

    2011-09-07

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

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

    PM47832

Fix information

  • Fixed component name

    WAS SCA FEATURE

  • Fixed component ID

    5724J0854

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"1.0.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
09 February 2022