IBM Support

PM47654: POOR PERFORMANCE RESULTS FROM USING THE KEY FUNCTION IN AN XSLT STYLESHEET

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Each reference to the key function in an XSLT stylesheet
    results in performance that is proportional to the size of the
    input document.  Users expect the performance of the key
    function to be constant rather than increase with the size of
    the input.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: XSLT stylesheets that make extensive    *
    *                      use of the key function exhibit poor    *
    *                      performance.                            *
    ****************************************************************
    * RECOMMENDATION:  Install a fix pack that contains this       *
    *                  APAR.                                       *
    ****************************************************************
    The XSLT processor maintains the key table for an input
    document using a Java HashMap.  The processor attempts to
    compute the key tables for each input document one time by
    caching each key table, in turn, in another HashMap, using a
    document identifier as the key.  After computing the key
    table, the processor passes the HashMap containing the newly
    constructed key table and the cache HashMap to a method that
    stores the new key table in the cache HashMap.  However, the
    arguments to the method are reversed, so that the processor
    passes the key table HashMap in the argument position where
    the cache HashMap belongs, and the cache HashMap in the
    argument position where the key table HashMap belongs.
    This means that the processor never caches the newly
    constructed key table, and the next time the key function is
    referenced on a node in that same document, the key table for
    that document will be constructed again.
    

Problem conclusion

  • The problem was resolved by swapping the two HashMap arguments
    in the call to the method that adds a newly constructed key
    table HashMap to the cache HashMap.
    
    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

    PM47654

  • 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-12

  • Closed date

    2011-10-18

  • Last modified date

    2011-10-18

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

    PM47426

  • 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