IBM Support

IT10201: MQ V8 C CLIENT FAILS WITH REASON CODE 2119 ATTEMPTING DATA CONVERSION

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • MQ V8 C client application fails with reason code 2119
    (MQRC_NOT_CONVERTED) when
    requesting data conversion on AIX using Getmsgopts:
    MQGMO_CONVERT .
    The message length is 20800 and the application buffer is 100 MB
    (104857600).
    

Local fix

  • There are a few options to resolve this problem.
    
    1 .Run the app in an environment which expands its malloc
    space. This example would let the app have three segment (1GB)
    of memory for malloc:
     export env LDR_CNTRL=MAXDATA=0x40000000 MyApp1 -m QMGR1
    
    2. Recompile the app with a bigger "maxdata" setting so
    that it can use more memory without an environment
    variable (might be good to do if #1 works but you
    don't want to have to worry about setting the
    variable every time you start the app):
    xlC_r -q32 -bmaxdata:0x40000000 MyApp2.c -o MyApp2
    So, since this is AIX, by default applications are
    limited to one segment (256 MB) of memory for malloc.
    Which is small .. See link below on
    
    AIX shared memory behavior for 32-bit applications
    
    http://www-01.ibm.com/support/docview.wss?uid=swg21651211
    or
    http://www-01.ibm.com/support/docview.wss?uid=swg21651211#Memory
    Models
    
    
    3. Change the application code to use a smaller message
    buffer than 100MB when getting MQ messages.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    Users using applications which request messages with data
    conversion and with large buffers.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    MQGET returned with RC 2119 because of failure in allocating a
    larger buffer. However the data length was less than
    the user specified buffer length. MQ should have handled this by
    retrying the allocation using a buffer based on the data length,
    but this was not the case.
    

Problem conclusion

  • MQ has been modified to retry the memory allocation based on the
    data length.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v8.0       8.0.0.4
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT10201

  • Reported component name

    WMQ BASE MULTIP

  • Reported component ID

    5724H7251

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-07-21

  • Closed date

    2015-09-25

  • Last modified date

    2015-09-25

  • 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

    WMQ BASE MULTIP

  • Fixed component ID

    5724H7251

Applicable component levels

  • R800 PSY

       UP

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

Document Information

Modified date:
25 September 2015