Author |
Message
|
pcouas |
Posted: Wed Sep 11, 2019 2:19 am Post subject: Clear message and amqrmppa application |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
Hi
I tried to clear message with PCF commands, but i see with MQMON tool application in Usage application there is an application named "amqrmppa" on Channel
What is this application ? it seems blocking Clear ?
My Qmanager is in version 9.1.2.0 and my Java Jar using 8.0.0.6 version
Regards |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Wed Sep 11, 2019 2:59 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
This is the (receiving) channel itself. Stop the receiver channel which opened the queue.
Do NOT kill the process, because it may handle more than one channel. _________________ Regards
Hubert |
|
Back to top |
|
 |
pcouas |
Posted: Wed Sep 11, 2019 3:53 am Post subject: |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
Ok
But This channel could block CLEAR QUEUE operation and giving an 4004 Error ?
Regards |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Wed Sep 11, 2019 4:13 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
Yes, if messages are put to a queue across a channel, the MCA (which is "amqrmppa") opens the queue and blocks the clear command.
Run the MQSC command
Code: |
DISPLAY QSTATUS(<_your_queue_>) IPPROCS OPPROCS
|
to see, if there are any processes which opened the queue (IPPROCS and OPPROCS must both be "0").
Run the MQSC command
Code: |
DISPLAY QSTATUS(<_your_queue_>) TYPE(HANDLE) APPLTAG |
to see the process(es) which have opened the queue. _________________ Regards
Hubert |
|
Back to top |
|
 |
pcouas |
Posted: Wed Sep 11, 2019 4:59 am Post subject: |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
So my Queue Connection is NOT CLOSED ? so i could not CLEAR ! |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Sep 11, 2019 5:16 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
A quick Google search for 'mqsc clear queue command' resulted in this: https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_7.5.0/com.ibm.mq.ref.adm.doc/q085470_.htm which contains this:
Quote: |
The command fails if either:
- The queue has uncommitted messages that have been put on the queue under syncpoint
- The queue is currently open by an application (with any open options) |
So, yes. _________________ 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 |
|
 |
HubertKleinmanns |
Posted: Wed Sep 11, 2019 5:36 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
pcouas wrote: |
So my Queue Connection is NOT CLOSED ? so i could not CLEAR ! |
As long as the channel process opens the queue, you should see a value of (at least) "1" for OPPROCS - and so you cannot CLEAR the queue.
As long as a reading process (e. g. an application) opens the queue, you should see a value of (at least) "1" for IPPROCS - and so you cannot CLEAR the queue too. _________________ Regards
Hubert |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Wed Sep 11, 2019 5:44 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
bruce2359 wrote: |
Quote: |
The command fails if either:
- The queue has uncommitted messages that have been put on the queue under syncpoint
- The queue is currently open by an application (with any open options) |
|
I would say, both statements tell the same, because when a eonnection to a QMgr disappears, the QMgr would either COMMIT (on a regular stop of the application) or BACKOUT (on an application crash) the messages. _________________ Regards
Hubert |
|
Back to top |
|
 |
pcouas |
Posted: Wed Sep 11, 2019 5:47 am Post subject: |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
Hi,
Display QSTATUS give me an OPPROCS(1) and MSGAGE(0) before CLEAR QUEUE |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Sep 11, 2019 5:59 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
pcouas wrote: |
Hi,
Display QSTATUS give me an OPPROCS(1) and MSGAGE(0) before CLEAR QUEUE |
Is there a question here? The queue is clearly open, so the CLEAR command will fail. _________________ 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 |
|
 |
pcouas |
Posted: Wed Sep 11, 2019 6:08 am Post subject: |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
Sorry
DISPLAY QSTATUS(E.MQEMMO2.MQEMMO3.X.205.QL) IPPROCS OPPROCS
--> OPPROCS(1)
DISPLAY QSTATUS(E.MQEMMO2.MQEMMO3.X.205.QL) TYPE(HANDLE) APPLTAG
--> APPLTAG(amqrmppa)
Last edited by pcouas on Wed Sep 11, 2019 6:09 am; edited 1 time in total |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Wed Sep 11, 2019 6:09 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
pcouas wrote: |
Hi,
Display QSTATUS give me an OPPROCS(1) and MSGAGE(0) before CLEAR QUEUE |
Hmm, that's what bruce2359 and I told in our last threads:
The values for OPPROCS and IPPROCS must be "0".
And the command "QSTATUS" with options "TYPE(HANDLE) APPLTAG" would show (I'm pretty sure) the channel process "amqrmppa".
So STOP the channel before clearing the queue!
A queue must not be in use by any application, when you want to clear it. _________________ Regards
Hubert |
|
Back to top |
|
 |
Vitor |
Posted: Wed Sep 11, 2019 6:13 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
HubertKleinmanns wrote: |
So STOP the channel before clearing the queue! |
While it may come to that, I'd be interested in the channel status and why the receiver MCA is persisting a handle on that queue.
Best case (which I think is where you're going) is that the channel is in active use and a remote application is putting messages to the queue being cleared. So stopping the queue will allow the target to be cleared, but at risk of causing problems upstream (like a full xmitq).
Worse case is the channel is stuck / in-doubt / some other condition which means the MCA is persisting the handle long after it should have closed it. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
pcouas |
Posted: Wed Sep 11, 2019 6:13 am Post subject: |
|
|
Voyager
Joined: 06 Sep 2011 Posts: 79
|
Humm
I create the Queue with Java program and i test it by sending and reading message in this new Queue !
I juste want be sure there is no new messsage in this Queue
Regards
Last edited by pcouas on Wed Sep 11, 2019 6:28 am; edited 1 time in total |
|
Back to top |
|
 |
Vitor |
Posted: Wed Sep 11, 2019 6:14 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
pcouas wrote: |
I create the Queue with Java program and i test it by sending and reading message in this new Queue !
I juste want be sure there is no new messsage in tis Queue |
Then in your place I would be very interested to discover why this queue manager process feels the need to open a handle to it. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|