MQ

MQ

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

amqrmppa continuous memory increase on IBM MQ 9.3.0.25

  • 1.  amqrmppa continuous memory increase on IBM MQ 9.3.0.25

    Posted Thu December 19, 2024 09:10 AM

    Dear SMEs 

    I have searched the forum with this issue but could not find any conclusive resolution , hence putting the issue here,Kindly  Please let me know if any of you faced this issue and how it was resolved 

    Issue - IBM MQ process amqrmppa  is continuously growing in memory size up to the point of server going out of the memory after upgrading to 9.3.0.25 from 9.0

    Setup - I have Mult instance queue managers running on two linux servers ( VMs) 

    Actions taken so far - 

    1. IBM suggested to upgrade to 9.3.0.25 from 9.3.0.15 to fix the issue , Done but it did not fix the issue
    2. IBM Suggested to set some malloc variables but that also did not fix the issue 

    I have around 600 connections made to this queue manager from client applications , most of the connections are handled by the problematic amq process 

     81132 mqm       4.6 /opt/mqm/bin/amqrmppa -m QM
    102966 mqm       0.7 /opt/mqm/bin/amqrmppa -m QM
     80751 mqm       0.4 /opt/mqm/bin/amqrmppa -m QM
     80008 mqm       0.1 /opt/mqm/bin/amqrmppa -m QM
     80432 mqm       0.0 /opt/mqm/bin/amqrmppa -m QM



    ------------------------------
    Satendra Negi
    ------------------------------


  • 2.  RE: amqrmppa continuous memory increase on IBM MQ 9.3.0.25

    Posted Thu December 19, 2024 09:39 PM

    Hi Satendra,

    The amqrmppa process is the part of the queue manager that runs channels, specifically, in your situation, SVRCONN channels, that are the counterpart to your client applications. You say you have 600 connections from client applications, so that will require quite a number of running instances of SVRCONNs on your queue manager to match. These SVRCONNs will run in amqrmppa processes.

    The way a Client-SVRCONN connection operates is that the SVRCONN is a "proxy" to the client and does whatever the client application requests. So, for example, if the client application does an MQOPEN of a queue, then this request is packaged up and sent down the network socket to the SVRCONN who unpacks this request and makes the ACTUAL MQOPEN call at the queue manager.

    Similarly if the client application requests an MQGET with a buffer of size 1MB, then the SVRCONN will make the ACTUAL MQGET call with an ACTUAL buffer of 1MB.

    So if your amqrmppa processes are using a lot of memory, then it is useful to also understand the behaviour of your client applications. If you don't know what your client applications are actually doing, you might find it useful to run Application Activity Trace to learn more about what they are doing and help you to discover the root cause of your memory issue.

    You may find this presentation a useful resource on this subject.

    Cheers,
    Morag



    ------------------------------
    Morag Hughson
    MQ Technical Education Specialist
    MQGem Software Limited
    Website: https://www.mqgem.com
    ------------------------------