|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Cluster Channel question |
« View previous topic :: View next topic » |
Author |
Message
|
BarryB |
Posted: Thu Jul 22, 2004 9:28 am Post subject: Cluster Channel question |
|
|
Acolyte
Joined: 01 Jul 2004 Posts: 53 Location: Vernon Hills, Il
|
I have the following scenario:
Box name = MQCluster1 (resides on AIX)
On this box there is a ServConn Channel called MQCluster1.SRV.TCP.ALL
Also, there is a queue called ROCC.RECV.QUEUE which is a cluster queue local on MQCluster1
This is a production box.
There is an MQClient application on the following box:
Box name = DALLAS (resides on AIX)
This application performs a 'get with wait unlimited' on the ROCC.RECV.QUEUE cluster queue, which is local on MQCluster1.
Now, there is a 'training' application on the following box:
Box name = TRAINING (resides on AIX)
The training application 'puts' a message to a remote queue definition on MQCluster1, which is transported to the real local queue on the mainframe.
Both the training and the MQClient application mentioned above specify the same channel name to connect to MQCluster1. Everything works perfectly with the MQClient application performing a get with wait unlimited until the training application puts a message on the remote queue using the same channel name as the MQClient app. Once the training app puts a message, if there is any incoming messages for the MQClient app to get, the MQClient app just hangs and never gets a message.
Is there a possibility that because the training and MQClient apps specify the same channel, that there could be some contention???
Any ideas would be appreciated. Also, the training app is not a part of the MQCluster, and is using a remote queue which is obviously not a cluster queue.
Thanks,
B |
|
Back to top |
|
 |
tallison |
Posted: Thu Jul 22, 2004 10:29 am Post subject: |
|
|
 Apprentice
Joined: 18 Jun 2002 Posts: 39 Location: Round Rock, Texas
|
This is not really a "Cluster Channel" Question. You have two appliations connecting to the MQCluster1 queue manager with the same channel name. this is what the sever connection channel is used for. for each inbound connection request a channel or thread is dedicated to that application. you can have many applications all using the same channel name but each application gets its own thread.
Is your putting application using syncpoint and not commiting the unit of work?
Does the getting application actually receive and process the first message on the queue?
If so, after processing does the application go back into the get loop or just hang? _________________ Cheers!!
Tony Allison
_________________
MQSeries Certified Specialist
MQSeries Certified Developer
MQSeries Certified Solutions Provider |
|
Back to top |
|
 |
BarryB |
Posted: Wed Jul 28, 2004 5:22 am Post subject: |
|
|
Acolyte
Joined: 01 Jul 2004 Posts: 53 Location: Vernon Hills, Il
|
The 'putting' application performs several puts with syncpoint, then commits after 'n' number of total transactions/messages within the batch. These messages are put to a separate queue than the 'getting' application. I was only thinking that since this application that performs a 'put' is using the same channel as the one that performs the 'get', so maybe the channel was being corrupted somehow.... Thus creating the 'hanging' problem with the 'get' program. I do realize several applications should be able to use that channel concurrently, each having their own thread; however, it seems that whenever the 'put' application is run at the same time the 'get' application is performing its gets, the 'get' application hangs. They have nothing to do with eachother except share the same channel, so this isnt making any sense. Any other clues?
Thanks for all of your help!
Barry |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|