IBM Support

PM47832: 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 the SDO API in IBM WebSphere       *
    *                  Application Server V8.0 and WebSphere       *
    *                  Process Server                              *
    ****************************************************************
    * 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.
    
    The fix for this APAR is currently targeted for inclusion in
    fix pack 8.0.0.2.  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

    PM47832

  • Reported component name

    WEBSPHERE APP S

  • Reported component ID

    5724J0800

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2011-09-14

  • Closed date

    2011-09-14

  • Last modified date

    2011-09-15

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

    PM45922

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

Fix information

  • Fixed component name

    WEBSPHERE APP S

  • Fixed component ID

    5724J0800

Applicable component levels

  • R800 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 October 2021