IBM Support

PK79480: RENDERING A MENU WITH A VERY LARGE NUMBER (THOUSANDS) OF RESULTS, CAN CAUSE OOM

 

APAR status

  • Closed as program error.

Error description

  • Rendering a Menu with a very large number (thousands) of
    results, can cause OOM
    

Local fix

  • NA
    

Problem summary

  • Problem Summary: Rendering a menu with many items (thousands)
    where the microTemplate for the Menu references a control or
    element that was lazy loaded, can result in the JCR workspace
    node cache growing unbounded while rendering.
    A previous APAR addressed the issue of the workspace node cache
    getting too big when retrieving all the controllables to be used
    when renderign the menu.  Unfortunately this only addressed part
    of the problem.  Since the controllables are loaded lazily
    during rendering, its possible that thesame nodes will get
    re-read during rendering if we need information that was not
    initially loaded.  Since the workspace is not periodically
    flushed we end up consuming all memory as we try to render the
    content.
    

Problem conclusion

  • When rendering the items, in order to resolve the lazy loaded
    data, we need to re-transform the node.  This causes another
    lookup of the node in the jCR.  which will cache the node in the
    workspace.  Since the workspace stays active during the entire
    render operation the node caches continue to build.  We need to
    periodically flush these caches to avoid the cache from growing
    too big.
    While rendering a FormatterCmpnt ( used by Menu, Navigator, and
    Personalization ) we need to periodically flush the workspace
    node cache, to avoid excessive growth.  By default we will now
    do a flush for each 1000  items processed.  This threshold can
    be change by setting the formatter.flushThreshold property in
    WCMConfigService.properties.
    We will also produce a warning message, that include the content
    path and name of the component being rendering if the result is
    producing more than x number of items.  the default value for x
    is 1000, and may be changed by setting
    formatter.warningThreshold in WCMConfigService.properties.
    We are also introducing a system wide hard maximum number of
    entries that the FormatterCmpnt will process.   This setting
    applies to all menus/navigators that specify 0 (unbounded) as
    the number of results per page.  By default this is set to no
    limit.  A limit can be set by adding the property
    formatter.maximumRenderableResults to
    WCMConfigService.properties, and setting it to some reasonable
    number, say 3000.
    
    A fix for the 6.0.1.3 release of WCM is available from:
    
    http://www.ibm.com/eserver/support/fixes/fixcentral/swg/quickord
    er?apar=PK79480&productid=Workplace%20Web%20Content%20Management
    &brandid=2
    

Temporary fix

Comments

APAR Information

  • APAR number

    PK79480

  • Reported component name

    LOTUS WEB CONT

  • Reported component ID

    5724I2900

  • Reported release

    60G

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-01-27

  • Closed date

    2009-03-02

  • Last modified date

    2009-03-30

  • 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

    LOTUS WEB CONT

  • Fixed component ID

    5724I2900

Applicable component levels

  • R60F PSY

       UP

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

Document Information

Modified date:
10 September 2020