Author |
Message
|
roshan.171188 |
Posted: Tue Sep 17, 2013 2:30 am Post subject: Deleting a queue with process attached? |
|
|
Apprentice
Joined: 07 Jun 2012 Posts: 35
|
Hi All,
I faced an issue a few days back when the command server process did NOT exist on the server (ps -ef| grep <PID>) but was still showing in the handle for COMMAND queue.
This prevented me to start the command server (since the queue already had a handle) and and also to stop the service (since there is no PID!)
Ultimate solution was to bounce the Queue manager.
I am looking for an alternate solution which would not require a Queue Manager recycle (which might include forcefully deleting a queue with handle attached?)
MQ version - 6.0.x
OS - Unix
Thanks! |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Sep 17, 2013 4:37 am Post subject: Re: Deleting a queue with process attached? |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
roshan.171188 wrote: |
Hi All,
I faced an issue a few days back when the command server process did NOT exist on the server (ps -ef| grep <PID>)... |
It would help if you provided the results of the ps command.
roshan.171188 wrote: |
..but was still showing in the handle for COMMAND queue. |
How do you know this?
roshan.171188 wrote: |
This prevented me to start the command server |
How did you attempt to start it?
roshan.171188 wrote: |
(since the queue already had a handle) |
How do you know this?
roshan.171188 wrote: |
...and and also to stop the service (since there is no PID!) |
How did you attempt to stop it? _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
Andyh |
Posted: Tue Sep 17, 2013 4:38 am Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
If this was a simple case of the command server ending, then the queue manager would have noticed the termination and closed objects that had been open by that process.
Is it possible that a more severe error occurred, for example if the amqzlaa0 thread acting on behalf of the command server were to fail then the symptoms you report would occur.
If this were the case then there should be one or more FDC files in /var/mqm/errors identifying the situation, and unless you terminated the process yourself (e.g kill -9) you should probably raise the issue with MQ support. |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Sep 17, 2013 4:52 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Which COMMAND queue? You aren't trying to delete the SYSTEM.COMMAND.INPUT queue, are you?
Which command server? _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
roshan.171188 |
Posted: Tue Sep 17, 2013 5:46 am Post subject: |
|
|
Apprentice
Joined: 07 Jun 2012 Posts: 35
|
I know if command server ends, MQ should close the handle, but in this case it did'nt prolly because of a resource crunch.
Yes, FDC's were generated but i dont want to get into the cause of the issue, I am right now looking for solution to this kind of scenerio's.
@Bruce, to answer your question :
1. i do not have the output for ps -ef| grep <pid> right now, but i am pretty sure i gave the command right and the pid did not actually exist on the system.
2. Handle? dis qs(SYSTEM.ADMIN.COMMAND.QUEUE) type(handle) had the process amqpcsea attached. The pid for which did not exist!
3. strmqcsv <QMname> ----output----> Command server queue is open. Try again later.
4. endmqcsv QMName -----output--------> Command server not running.
The QM recycle fixed the issue but I was wondering if there can be a better alternative which would not require a downtime (in case of productions) |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Sep 17, 2013 6:24 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
What were you trying to do when all of this began? Were you trying to stop the command server?
Why would you want to delete the command queue? _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
JosephGramig |
Posted: Tue Sep 17, 2013 7:22 am Post subject: |
|
|
 Grand Master
Joined: 09 Feb 2006 Posts: 1244 Location: Gold Coast of Florida, USA
|
Did you try to inhibit GETs on the queue?
That should make the program let go. |
|
Back to top |
|
 |
Andyh |
Posted: Tue Sep 17, 2013 7:46 am Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
If an agent thread that 'owned' and input handle to this queue ended abruptly then the only way to reset the open input count will be to restart the queue manager.
Ignoring errors of this nature can lead to all sorts of trouble and a resource shortage shouldn't generally be sufficient reason to cause an agent failure (some unlikely resource shortages, such as stack exhaustion would be 'difficult' to handle).
On the assumption that a failure has occurred within an agent (amqzlaa0) process, my advice would be to raise this with MQ support. |
|
Back to top |
|
 |
JosephGramig |
Posted: Tue Sep 17, 2013 9:14 am Post subject: |
|
|
 Grand Master
Joined: 09 Feb 2006 Posts: 1244 Location: Gold Coast of Florida, USA
|
Andyh,
The OP mentioned that this is MQ 6.0.something and that is at 'End of Support'. Of course, maybe they bought a very expensive extended support contract.
So, most likely, they would need to migrate to a supported version first and then if the problem happened again, open a PMR. |
|
Back to top |
|
 |
Andyh |
Posted: Tue Sep 17, 2013 10:10 am Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
I'd suggest that if you choose to continue to run MQ V6.0 in production an extended support contract is the way to go.
I can't comment on whether the existing FDC's would be sufficient to identify the issue, but give the 'maturity' of MQ V6 there's got to be a fair chance this is something L2/L3 would already recognize. |
|
Back to top |
|
 |
shashivarungupta |
Posted: Wed Sep 18, 2013 10:47 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
JosephGramig wrote: |
Did you try to inhibit GETs on the queue?
That should make the program let go. |
Nope, that seems to be a bug in the product version , where even after inhibit GET on the queue.. it won't let the thread go. _________________ *Life will beat you down, you need to decide to fight back or leave it.
Last edited by shashivarungupta on Wed Sep 18, 2013 10:56 am; edited 1 time in total |
|
Back to top |
|
 |
shashivarungupta |
Posted: Wed Sep 18, 2013 10:55 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
bruce2359 wrote: |
Why would you want to delete the command queue? |
Cause matter of fact, when command server is started after ending it creates the system command queue (if that's deleted intentionally/unintentionally from that queue manager)., I think which he had tested earlier in his local (not on the client's server).
But that shouldn't be a part of solution.
IBM shares a link (but that's valid for MQ v7.0.1) related to similar issue. _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
shashivarungupta |
Posted: Wed Sep 18, 2013 11:00 am Post subject: |
|
|
 Grand Master
Joined: 24 Feb 2009 Posts: 1343 Location: Floating in space on a round rock.
|
JosephGramig wrote: |
Andyh,
... most likely, they would need to migrate to a supported version first and then if the problem happened again, open a PMR. |
{ Unless Applications connecting to MQ v6x have no limitations to connect to supported MQ versions (or latest MQ versions.) } _________________ *Life will beat you down, you need to decide to fight back or leave it. |
|
Back to top |
|
 |
bkiran2020 |
Posted: Thu Sep 19, 2013 2:28 am Post subject: |
|
|
 Master
Joined: 20 Jan 2011 Posts: 243 Location: US
|
bruce2359 wrote: |
What were you trying to do when all of this began? Were you trying to stop the command server?
Why would you want to delete the command queue? |
can we try to kill the orphan command server process by using pkill command  |
|
Back to top |
|
 |
Andyh |
Posted: Thu Sep 19, 2013 12:20 pm Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
I can't give you a definitive answer without having reviewed the FDC's, however on the assumption that an agent thread (or process) ended abruptly, and that agent thread/process was acting on behalf of the command server, then your ONLY option is to restart the queue manager. |
|
Back to top |
|
 |
|