IBM Support

IT08919: MQRC 2031 WHEN RETRIEVING LARGE RECORDED PAYLOAD

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • When using the Record and Replay capability in IBM Integration
    Bus, you can choose, in the web ui, to retrieve the payload for
    a recorded message.
    
    For large payloads, this can result in a runtime exception
    containing: BIP2070E: A problem was detected with WebSphere MQ
    while issuing MQPUT for WebSphere MQ queue
    'SYSTEM.BROKER.DEPLOY. REPLY', WebSphere MQ queue manager
    ''. MQCC=2, MQRC=2031.
    
    MQRC 2031 means MQRC_MSG_TOO_BIG_FOR_Q_MGR , and occurs when
    the message exceeds the MaxMsgLength for the queue manager,
    typically 100MB.
    
    The recorded message payload is encoded (as hexBinary, base64
    or CDATA), so is larger than the actual original message size.
    However, when the payload is retrieved via the web ui (or
    Integration API, or REST API), the message containing that
    encoded payload is itself encoded again as hexBinary.
    This has the effect of double-encoding the original bitstream,
    making the message, in transit, more than twice the size of the
    data stored in the DataCaptureStore.
    
    For a bitstream of size 40MB, when encoded using base64
    encoding, this could be more than 50MB. With the subsequent
    double-encoding, this gets inflated to more than 100MB,
    resulting in the MQRC 2031 error.
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    All users of IBM Integration Bus V9.0 or V10.0 who use record
    and replay capability with large messages.
    
    
    Platforms affected:
    MultiPlatform, z/OS
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    When using the Record and Replay capability in IBM Integration
    Bus, you can choose, in the web ui, to retrieve the payload for
    a recorded message.
    
    For large payloads, this can result in a runtime exception
    containing: BIP2070E: A problem was detected with WebSphere MQ
    while issuing MQPUT for WebSphere MQ queue
    'SYSTEM.BROKER.DEPLOY. REPLY', WebSphere MQ queue manager ''.
    MQCC=2, MQRC=2031.
    
    MQRC 2031 means MQRC_MSG_TOO_BIG_FOR_Q_MGR, and occurs when the
    message exceeds the MaxMsgLength for the queue manager,
    typically 100MB.
    
    The recorded message payload is encoded (as hexBinary, base64 or
    CDATA), so is larger than the actual original message size.
    However, when the payload is retrieved via the web ui (or
    Integration API, or REST API), the message containing that
    encoded payload is itself encoded again as hexBinary. This has
    the effect of double-encoding the original bitstream, making the
    message, in transit, more than twice the size of the data stored
    in the DataCaptureStore.
    
    For a bitstream of size 40MB, when encoded using base64
    encoding, this could be more than 50MB. With the subsequent
    double-encoding, this gets inflated to more than 100MB,
    resulting in the MQRC 2031 error.
    
    
    There are a number of resource name changes between WebSphere
    Message Broker and IBM Integration Bus Version 9.0. For details
    visit
    http://pic.dhe.ibm.com/infocenter/wmbhelp/v9r0m0/topic/com.ibm.e
    tools.mft.doc/bb23814_.htm
    

Problem conclusion

  • The product now ensures that encoding is kept to a minimum for
    payloads retrieved via the record and replay capability.
    
    Payloads encoded as hexBinary or base64 are now sent from the
    runtime as they are. Payloads stored as CDATA are further
    encoded using base64, in order for them to be safely transmitted
    as part of the response message to the web ui.
    
    This APAR modifies both the runtime and the Integration API.
    Users who have written standalone applications that use the
    Integration API to retrieve payloads, via the DataCaptureProxy
    class, need to update the ConfigManagerProxy.jar file used by
    these applications.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.0       9.0.0.5
    v10.0      10.0.0.2
    
    The latest available maintenance can be obtained from:
    http://www-01.ibm.com/support/docview.wss?rs=849&uid=swg27006041
    
    If the maintenance level is not yet available,information on
    its planned availability can be found on:
    http://www-1.ibm.com/support/docview.wss?rs=849&uid=swg27006308
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT08919

  • Reported component name

    INTEGRATION BUS

  • Reported component ID

    5724J0530

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-05-14

  • Closed date

    2015-09-11

  • Last modified date

    2015-09-11

  • 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

    INTEGRATION BUS

  • Fixed component ID

    5724J0530

Applicable component levels

  • R900 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSNQK6","label":"IBM Integration Bus"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
23 March 2020