Author |
Message
|
cdhami |
Posted: Fri Feb 03, 2006 9:44 am Post subject: MQ error 2034...help needed |
|
|
Newbie
Joined: 03 Feb 2006 Posts: 9
|
Hi,
I have some problems which i think u might be able to explain.
My application is triggered by a queue.(trigger type =f)
Application does a browse (with input-shared and browse) and then, on processing the details.. does MQget with browse under cursor option.
This works fine ...but suddenly once it gave a return code of 2034 while deleting the message under cursor.
I have no other application which gets messages from the same Q.
Error code suggests that multiple triggers for same application may have been generated.
how can i be sure of that statment.
also..my trigger interval has elapsed after first browse and mqget-msg-under-cursor is not yet done...at this point if another message arrives then application will be triggered again or not.. ?
waiting ..for the kind reply
thanks
cdhami |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Feb 03, 2006 9:59 am Post subject: Re: MQ error 2034...help needed |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
cdhami wrote: |
waiting ..for the kind reply |
I think it won't be so kind, since you double-posted.
Also, have you reviewed the documentation on triggering to understand the process better? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Fri Feb 03, 2006 10:03 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
I deleted your other post.
You should be using the LOCK option on the browse if you might need to get a message you are browsing and don't want someone else to "steal" it.
It might have also expired. between your browse and your attempt to get. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
wschutz |
Posted: Fri Feb 03, 2006 12:33 pm Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Quote: |
Application does a browse (with input-shared and browse) and then, on processing the details.. does MQget with browse under cursor option.
|
when I see statements like this, I always wonder whether your design should be:
Code: |
MQGET with SYNCPOINT
do processing
MQCOMMIT
|
Is there some reason that model doesn't work for you? _________________ -wayne |
|
Back to top |
|
 |
cdhami |
Posted: Fri Feb 03, 2006 7:42 pm Post subject: |
|
|
Newbie
Joined: 03 Feb 2006 Posts: 9
|
The application design is inherited and cannot be changed right away.
However i was trying to find the reason for this problem.
How do i find whether the problem is due to expiry of time interval between browse and mqget using msg-under-cursor.
Secondly the conditions are as follows
CICS application
Trigger type = F
No other appln acts on the queue.
queue is opened with browse+ input-shared option once
Is there any case where duplicate triggers are generated(and multiple instances appear for the transaction and both act on same message).
I am sure there is no rollback in the application .
Cdhami. |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Feb 03, 2006 11:55 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
If you are using a browse without lock you should not be surprised. The message is fair game for anybody trying to do a get.
Read up on triggering and design. Read multiple times Waynes advice and check it against the different triggering patterns. The only way you can really regulate correctly your process is if you follow Wayne's advice. Yes it will cost you and you have to change the app but it will be cheaper in the long run than dealing with the problems you're facing now.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
jefflowrey |
Posted: Sat Feb 04, 2006 6:02 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I think if you show clearly that the error is a direct result of the application design, which it pretty much is, and explain that this error is not fixable until the application design is changed (which is pretty true)...
Then the only question that will remain is when the app design will be changed, not if. And the answer to when should be, before the cost to deal with the error has taken over the cost to fix the problem.
So that's the next thing you need to show - is how expensive is it each time this error occurs, in people time and machine time and customer time. Then you can show how quickly or slowly this cost grows larger than the time to recode the appplication - for a competant programmer this should only be a few hours at most. But there will necessarily be testing time, and deployment time as well. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JT |
Posted: Sat Feb 04, 2006 11:01 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
Quote: |
Is there any case where duplicate triggers are generated(and multiple instances appear for the transaction and both act on same message). |
Seems like you're having trouble moving off of this scenario, so put yourself at ease, and change the share option on the queue to exclusive. The results will allow you to move forward, and look at the application logic, as everyone is suggesting. |
|
Back to top |
|
 |
Prashant_MQ |
Posted: Thu Feb 09, 2006 6:59 pm Post subject: |
|
|
Apprentice
Joined: 07 Feb 2006 Posts: 28
|
Hi,
I read the following sentence from one of the pdf's.
"The queue is opened for use with subsequent MQGET calls with one of the
following options:
MQGMO_BROWSE_FIRST
MQGMO_BROWSE_NEXT
MQGMO_BROWSE_MSG_UNDER_CURSOR
This is allowed even if the queue is currently open for
MQOO_INPUT_EXCLUSIVE."
But cdhami says "Application does a browse (with input-shared and browse) and then, on processing the details.. does MQget with browse under cursor option. "
Can anyone comment on this.Both seem to be contradicting each other.
Thanks. |
|
Back to top |
|
 |
PeterPotkay |
Posted: Thu Feb 09, 2006 8:07 pm Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
Prashant_MQ wrote: |
Can anyone comment on this.Both seem to be contradicting each other. |
There is no contradiction. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
|