IBM Support

PM12499: PERFORMANCE ISSUE WHEN USING ID TYPE ELEMENTS WITH SDOS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A potential performance problem exists in this scenario:
    A large amount of data in a Service Data Object (SDO)  uses the
    following Property type for the configAttribute element:
    
    <xsd:complexType name="Property">
    <xsd:sequence>
    <xsd:element name="name" type="xsd:string" />
    <xsd:element name="value" type="xsd:string" />
    </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="someConfig">
    <xsd:sequence>
    <xsd:element name="configAttribute"
    type="tns:Property"
    minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
    </xsd:complexType>
    
    
    The sdo.xml would look like this:
    
    <someConfig>
    <configAttribute>
    <name>some_type</name>
    <value>
    </value>
    </configAttribute>
    <configAttribute>
    <name>some_type_2</name>
    <value>no</value>
    </configAttribute>
    <configAttribute>
    <name>something_enabled</name>
    <value>yes</value>
    </configAttribute>
    <configAttribute>
    <name>some_name</name>
    <value>a_value</value>
    </configAttribute>
    </someConfig>
    
    The SDO contains over 500 of these configAttribute elements.
    
    
    At runtime, it could take about 3-5 ms to get values using an
    XPath expression:
    
    sdo.getString("someConfig/configAttribute[name='some_name
    ']/value")
    
    
    In order to take advantage of the fix in this APAR, it will be
    necessary to change the type of the 'name' element in the
    complexType to be xsd:ID instead of xsd:string:
    
    <xsd:complexType name="Property">
    <xsd:sequence>
    <xsd:element name="name" type="xsd:ID" />
    <xsd:element name="value" type="xsd:string" />
    </xsd:sequence>
    </xsd:complexType>
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of IBM WebSphere Application Server   *
    *                  7.0 with the Feature Pack for XML 1.0.0.0   *
    *                  or earlier.                                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: Implementation of ID-type navigation    *
    *                      in XCI had functional and performance   *
    *                      issues.                                 *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The ID-type support in XCI (Object Cache) was causing the
    entire document to be materialized in memory in order to find
    matching nodes.  Furthermore, the ID-type support did not
    provide the correct results when the behaviour requested was the
    XPath/XQuery function "fn:element-with-id()".
    

Problem conclusion

  • The ID-type framework in XCI now lazily parses the document
    when searching for the requested ID, and correctly supports the
    "fn:element-with-id()" semantics.
    
    This APAR is currently targeted for inclusion in the Feature
    Pack for XML 1.0.0.7.  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

    PM12499

  • Reported component name

    XML FEATUREPACK

  • Reported component ID

    5724J0856

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-04-16

  • Closed date

    2010-05-04

  • Last modified date

    2010-05-05

  • 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

    XML FEATUREPACK

  • Fixed component ID

    5724J0856

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","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
09 February 2022