IBM Support

JR57059: SELF-REFERENCING DATA MODEL MIGHT CAUSE OUTOFMEMORY ISSUE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Invoking IBM Business Process Manager (BPM) REST APIs that
    return process or task details might cause out-of-memory
    exceptions if the process or task data contains business objects
    that contain a property that refers to the business object
    itself, creating a recursive data structure. A heap dump
    analysis includes call stacks that show recursive invocations of
    com.ibm.bpm.json.util.JSONUtil.TWObjectToJSON, for example
    
    WebContainer : 12
      at java.lang.StringBuffer.ensureCapacityImpl(I)V
    (StringBuffer.java:338(Compiled Code))
      at
    java.lang.StringBuffer.append(Ljava/lang/String;)Ljava/lang/Stri
    ngBuffer
    ; (StringBuffer.java:204(Compiled Code))
      at
    com.ibm.bpm.json.util.JSONUtil.TWObjectToJSON(Ljava/lang/Object;
    I)Ljava/
    lang/String; (JSONUtil.java:123(Compiled Code))
      at
    com.ibm.bpm.json.util.JSONUtil.TWObjectToJSON(Ljava/lang/Object;
    I)Ljava/
    lang/String; (JSONUtil.java:199(Compiled Code))
      at
    com.ibm.bpm.json.util.JSONUtil.TWObjectToJSON(Ljava/lang/Object;
    I)Ljava/
    lang/String; (JSONUtil.java:199(Compiled Code))
      at
    ...
    

Local fix

Problem summary

  • While serializing the data structure to JSON in the REST API
    response, IBM BPM might not stop the recursion in time before
    the available memory is used when a business object refers to
    itself.
    

Problem conclusion

  • A interim fix is available on request from BPM level 3 support
    for IBM BPM V8.5.7 cumulative fix 2016.06
    
    A fix is available for IBM BPM V8.5.7 cumulative fix 2016.12
    that introduces a detection mechanism for a self-referencing
    data structures. In general, such data structures should be
    avoided in process models, but if the IBM BPM runtime
    environment encounters such data the serialization stops
    recursively serializing the business object.
    
    To determine whether the IBM BPM V8.5.7 cumulative fix 2016.12
    is available and download it if it is, complete the following
    steps on Fix Central:
    
    1. On the Select product tab, select WebSphere as the product
    group, IBM Business Process Manager with your edition from the
    WebSphere options, All as the installed version, and All as the
    platform, and then click Continue.
    2. In the Text field, enter "cumulative fix", and click
    Continue.
    
    PRODUCTS AFFECTED
    IBM Business Process Manager (BPM) Advanced
    IBM BPM Standard
    IBM BPM Express
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR57059

  • Reported component name

    BPM STANDARD

  • Reported component ID

    5725C9500

  • Reported release

    857

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-11-24

  • Closed date

    2016-12-08

  • Last modified date

    2016-12-08

  • 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

    BPM STANDARD

  • Fixed component ID

    5725C9500

Applicable component levels

  • R857 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTDH","label":"IBM Business Process Manager Standard"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"857","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
08 December 2016