1
votes

I am trying to understand the SHARECNV parameter of Websphere MQ. Can some one please help me understand the following

  1. Does SHARECNV greater than 0 mean that the same message will be shared to those many number of threads? Or does it mean only the connection will be shared?
  2. In my application multiple consumer thread listen on the same Queue. With SHARECNV set to 10 does that mean same message can be picked up by different threads. Because I am observing messages getting duplicated.
  3. Could there be a scenario where due to SHARECNV variable the msg.acknowledge() is not sent correctly?

If someone can provide some good docs regarding SHARECNV it would be really helpful.

Thanks

1

1 Answers

2
votes

The SHARECNV is an attribute of SVRCONN type of channel. This parameter indicates how many conversations can be shared over a single TCP/IP connection (i.e. TCP socket) to queue manager.

It does NOT mean message will be shared to multiple threads. It just means one TCP/IP connection will be shared.

You can find more details here on SHARECNV

Can you provide details of your application? You can check JMSRedelivered attribute on received message to determine if a message has been redelivered. A True value indicates the message has been redelivered which means a consumer who got this message earlier did not acknowledge it.