Author |
Message
|
deb |
Posted: Wed Sep 26, 2007 12:59 am Post subject: Killing queue connection from console |
|
|
 Novice
Joined: 18 Jul 2007 Posts: 18 Location: Germany
|
Hello,
I am using MQSeries 5.3 in AIX.
My question is, How is it possible to kill a queue connection
from the AIX console.
I get a connection problem MQJE001: Completion Code 2, Reason 2042
which says the queue is already open.
This is a NOSHARE queue and i can have only one get connection which
is the requirement.
I dont want to restart the queue manager so i want to kill this queue
connection directly from console.
Can someone suggest how to do so?
Regards
Deb |
|
Back to top |
|
 |
Nigelg |
Posted: Wed Sep 26, 2007 1:21 am Post subject: |
|
|
Grand Master
Joined: 02 Aug 2004 Posts: 1046
|
Discover which app has the queue open, and end it. Try DIS QS(QUEUE) TYPE(HANDLE). _________________ MQSeries.net helps those who help themselves.. |
|
Back to top |
|
 |
deb |
Posted: Wed Sep 26, 2007 1:26 am Post subject: |
|
|
 Novice
Joined: 18 Jul 2007 Posts: 18 Location: Germany
|
I have killed the application which had this connection, but still the queue connection seem to be open and getting 2042 error.
The qstatus command gives me the below output:
DISPLAY QSTATUS(MQ.QUEUE1) TYPE(HANDLE)
1 : DISPLAY QSTATUS(MQ.QUEUE1) TYPE(HANDLE)
AMQ8450: Display queue status details.
QUEUE(MQ.QUEUE1)
AMQ8450: Display queue status details.
QUEUE(MQ.QUEUE1)
AMQ8450: Display queue status details.
QUEUE(MQ.QUEUE1) |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Sep 26, 2007 2:48 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Code: |
dis conn(*) where(objname eq myqname)
stop conn(conname from above) |
In 5.3
Code: |
dis qs(myqname) type(handle) all |
Make sure you kill/stop the pid/channel shown in the response....
Clusters
Code: |
stop chl(myclusterchl) mode(quiesce) status(inactive) |
works wonders with cluster sender channels once the destination qmgr has been suspended from the cluster. Yes you need to find who the sender is and execute it on the sender qmgr...
Code: |
dis chs(to.mydestqmgr) |
on the destqmgr will give you that information as should the queue status...
You can also do a hard suspend and close the cluster receiver ....
Code: |
suspend qmgr cluster(mycluster) mode(force) |
Don't forget to start the cluster receiver chl again when you're done and to resume the qmgr to the cluster...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
deb |
Posted: Wed Sep 26, 2007 3:09 am Post subject: |
|
|
 Novice
Joined: 18 Jul 2007 Posts: 18 Location: Germany
|
Thanks,
the command dis qs(myqname) type(handle) pid
gave me the PID which i killed and now things are working fine.
The lock is released. |
|
Back to top |
|
 |
|