ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General IBM MQ Support » MQ error 2034...help needed

Post new topic  Reply to topic
 MQ error 2034...help needed « View previous topic :: View next topic » 
Author Message
cdhami
PostPosted: Fri Feb 03, 2006 9:44 am    Post subject: MQ error 2034...help needed Reply with quote

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
View user's profile Send private message Send e-mail
jefflowrey
PostPosted: Fri Feb 03, 2006 9:59 am    Post subject: Re: MQ error 2034...help needed Reply with quote

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
View user's profile Send private message
PeterPotkay
PostPosted: Fri Feb 03, 2006 10:03 am    Post subject: Reply with quote

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
View user's profile Send private message
wschutz
PostPosted: Fri Feb 03, 2006 12:33 pm    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail AIM Address
cdhami
PostPosted: Fri Feb 03, 2006 7:42 pm    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail
fjb_saper
PostPosted: Fri Feb 03, 2006 11:55 pm    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail
jefflowrey
PostPosted: Sat Feb 04, 2006 6:02 am    Post subject: Reply with quote

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
View user's profile Send private message
JT
PostPosted: Sat Feb 04, 2006 11:01 am    Post subject: Reply with quote

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
View user's profile Send private message
Prashant_MQ
PostPosted: Thu Feb 09, 2006 6:59 pm    Post subject: Reply with quote

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
View user's profile Send private message
PeterPotkay
PostPosted: Thu Feb 09, 2006 8:07 pm    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » MQ error 2034...help needed
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.