Bootstrap FreeKB - IBM MQ - Understanding amqrmppa (channel pooling process)
IBM MQ - Understanding amqrmppa (channel pooling process)

Updated:   |  IBM MQ articles

A channel is used to used to make a connection to an IBM MQ queue manager, thus each connection will be associated with a channel.

 

amqrmppa is IBM MQ channel pooling process. For example, let's say a connection is made to IBM MQ on a channel named foo.channel1.svr. While the connection is active, the display chstatus command should show that the channel is running.

AMQ8417: Display Channel Status details.
  CHANNEL(foo.channel1.svr)           CHLTYPE(SVRCONN)
  CONNAME(10.1.2.3)                   CURRENT
  STATUS(RUNNING)                     SUBSTATE(RECEIVE)

 

In this scenario, the ps command should include one or more amqrmppa processes. Each amqrmppa process can be used by numerous different connections, which is why the amqrmppa process is known as a pooling process.

~]$ ps -ef | grep amqrmppa
mqm        4047   4022  1 Jun19 ?        07:59:40 /opt/mqm/bin/amqrmppa -m MANAGER001

 

The display conn command with the ALL or PID option can be used to show the active connections and the PID of the amqrmppa process that the connection is using (4047 in this example).

~]# echo "display conn (*) PID" | runmqsc MANAGER01
AMQ8276I: Display Connection details.
  CONN(0938739232847)
  EXTCONN(418D84A8B837E3938A983ABC9)
  TYPE(CONN)
  PID (4047)

 

Once the connection has closed, the IBM MQ error log should contain something like this.

----- cmqxrfpt.c : 692 --------------------------------------------------------
07/15/2021 04:10:08 PM - Process(4391.5658756) User(mqm) Program(amqrmppa)
                    Host(server1.example.com) Installation(Installation1)
                    VRMF(9.1.0.5) QMgr(MANAGER001)
                    Time(2021-07-15T21:10:08.620Z)
                    CommentInsert1(foo.channel1.svr)
                    CommentInsert2(4391)
                    CommentInsert3(10.17.1.55)

AMQ9001I: Channel 'foo.channel1.svr' ended normally.

EXPLANATION:
Channel 'foo.channel1.svr' to host '10.17.1.55' ended normally.
ACTION:
None.

 

And the display chstatus (channel status) command can be used to show the channels with an active connection. Something like this should be returned for each connection.

AMQ8417: Display Channel Status details.
  CHANNEL(MANAGER01.CHANNEL01.SVR)    CHLTYPE(SVRCONN)
  CONNAME(10.1.2.3)                   CURRENT
  STATUS(RUNNING)                     SUBSTATE(RECEIVE)

 




Did you find this article helpful?

If so, consider buying me a coffee over at Buy Me A Coffee



Comments


Add a Comment


Please enter 86ec86 in the box below so that we can be sure you are a human.