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 » MQRC_OBJECT_CHANGED

Post new topic  Reply to topic
 MQRC_OBJECT_CHANGED « View previous topic :: View next topic » 
Author Message
mqjava
PostPosted: Thu Aug 11, 2011 7:55 am    Post subject: MQRC_OBJECT_CHANGED Reply with quote

Voyager

Joined: 25 May 2009
Posts: 80
Location: New Jersey

Hi All,

Our Application open a ALIAS queue ALIAS.Q.A and puts messages, currently ALIAS.Q.A points to LOCAL.Q.A, for some requirement we have to modify the tragq and point the ALIAS.Q.A to LOCAL.Q.B, once when we modify the targq property application is getting MQRC_OBJECT_CHANGED error, if we recycle the application then application is able to put the message to LOCAL.Q.B we want this to happen without recycle of the application .

From Info center the doc for MQRC_OBJECT_CHANGED says -
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.amqzao.doc/fm12450_.htm
Code:
"This reason does not occur if the object handle is specified in the Context field of the PutMsgOpts parameter on the MQPUT or MQPUT1 call."



Can somebody elaborate on this, as i dont have programming exp. Thanks in advance.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Aug 11, 2011 8:16 am    Post subject: Re: MQRC_OBJECT_CHANGED Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

mqjava wrote:
Hi All,

Our Application open a ALIAS queue ALIAS.Q.A and puts messages, currently ALIAS.Q.A points to LOCAL.Q.A, for some requirement we have to modify the tragq and point the ALIAS.Q.A to LOCAL.Q.B, once when we modify the targq property application is getting MQRC_OBJECT_CHANGED error, if we recycle the application then application is able to put the message to LOCAL.Q.B we want this to happen without recycle of the application .

From Info center the doc for MQRC_OBJECT_CHANGED says -
http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.amqzao.doc/fm12450_.htm
Code:
"This reason does not occur if the object handle is specified in the Context field of the PutMsgOpts parameter on the MQPUT or MQPUT1 call."



Can somebody elaborate on this, as i dont have programming exp. Thanks in advance.


I would suggest that when the application is getting that error code, it closes the current object (queue) and reopens it.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
mqjava
PostPosted: Thu Aug 11, 2011 9:36 am    Post subject: Reply with quote

Voyager

Joined: 25 May 2009
Posts: 80
Location: New Jersey

Thanks fjb_saper.

That will work.

But i am curious to know what this is -

Code:
"This reason does not occur if the object handle is specified in the Context field of the PutMsgOpts parameter on the MQPUT or MQPUT1 call."


Can you please explain what this is?

[/quote]
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Aug 11, 2011 10:36 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9470
Location: US: west coast, almost. Otherwise, enroute.

Quote:
Can you please explain what this is?

This is working as designed and documented.

When an app mqopens an object, the qmgr issues an object-handle that identifies the apps access to a specific queue - the target of the alias queue def in this case.

When you change the alias def to point to a different targq, the qmgr correctly invalidates the object-handle of currently executing apps, AND issues a ReasonCode and CompletionCode identifying why the mqi call failed.

This qmgr behavior maintains consistency across multiple apps that might have used the same alias to open the targq. It would make no sense to have some apps putting to one targq, and other apps putting to the targq most recently identified in the alias def. This is the default qmgr behavior.

WMQ allows for an exception to this behavior - provided that apps understand and manage the exception.
_________________
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
View user's profile Send private message
mqjava
PostPosted: Thu Aug 11, 2011 11:37 am    Post subject: Reply with quote

Voyager

Joined: 25 May 2009
Posts: 80
Location: New Jersey

Thank You Bruce.
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 » MQRC_OBJECT_CHANGED
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.