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 messages are Lost

Post new topic  Reply to topic
 MQ messages are Lost « View previous topic :: View next topic » 
Author Message
mqbee1667
PostPosted: Fri Jul 03, 2015 7:02 am    Post subject: MQ messages are Lost Reply with quote

Newbie

Joined: 03 Jul 2015
Posts: 3

We are moving our current MQ 6.5 to MQ 7.5. I am new to this environment. I am having an issue in new environment. When sender application is placing the Messages in the queue some of them are disappearing . This behavior is not consistent. Some times we receive all but some times we loose like 5 to 10 messages in a row and then we can find rest. My queues are Persistent Queues. When I bring down the queue manager and look at the active logs I can see all the messages including the missing ones with exact delivered time but those never showed up in the queue. Can some one shed some light on this behavior.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 03, 2015 7:22 am    Post subject: Re: MQ messages are Lost Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqbee1667 wrote:
My queues are Persistent Queues.


As you'll see many times quoted in this forum, there are no such things as persistent queues. Persistence is a message attribute not a queue one. What you have are queues where the default persistence is true, but that doesn't mean the application can't deliberately set persistence false. Beware of this.

mqbee1667 wrote:
When I bring down the queue manager and look at the active logs I can see all the messages including the missing ones with exact delivered time but those never showed up in the queue.


Without compromising anything I said above, if the messages are showing up in the log (and that isn't the best way of checking) then it's likely a) the messages have their persistence set true and b) they are being delivered.


mqbee1667 wrote:
Can some one shed some light on this behavior.


What behavior? According to the MQ logs, the messages are being delivered. So on what basis do you claim that they "never showed up in the queue"? Is this because the receiving application doesn't record reading them, and if so how do you know this isn't an application problem? Are the messages, instead of being in the target queue, in a back out queue or dead letter queue because of processing problems? What steps have to taken, prior to posting here, to follow the progress of messages and track the "missing" ones? I'm thinking here of queue manager statistics and (for problem resolution purposes) COD/COA messages, but other methods are available.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqbee1667
PostPosted: Fri Jul 03, 2015 8:12 am    Post subject: Reply with quote

Newbie

Joined: 03 Jul 2015
Posts: 3

Vitor ..Thank you for your quick reply. Before reading into the application , we are looking in the queue thru MQ explorer and finding that we are missing messages. Our source application is sending 200 (for example) but when we look at the queue we are seeing only 190.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Fri Jul 03, 2015 8:38 am    Post subject: Reply with quote

Grand High Poobah

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

mqbee1667 wrote:
Vitor ..Thank you for your quick reply. Before reading into the application , we are looking in the queue thru MQ explorer and finding that we are missing messages. Our source application is sending 200 (for example) but when we look at the queue we are seeing only 190.

If you don't have a reliable connection this is a fair assessment.

If the messages sent must be received make the messages persistent. Non persistent messages can be lost in the channel. (Interference, bad connection, etc...)

Have fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Fri Jul 03, 2015 8:42 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqbee1667 wrote:
Our source application is sending 200 (for example) but when we look at the queue we are seeing only 190.


And you've looked in the other queues for the missing 10 messages and not found them? And you've confirmed that the source application really did send 200 messages as it claimed? Are both applications using the same queue manager and, if not, what do the channel statistics say?

I'm assuming (because otherwise your question is nonsense) that none of these messages expire? And that nothing other than the application that processes these messages is reading the queue?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqbee1667
PostPosted: Fri Jul 03, 2015 8:52 am    Post subject: Reply with quote

Newbie

Joined: 03 Jul 2015
Posts: 3

I have looked in all the queues and not found any where. Yes I have confirmed that these messages are delivered by source application because we get ack back when the message is delivered.
No none of the messages are set to expire.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 03, 2015 9:08 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

mqbee1667 wrote:
Yes I have confirmed that these messages are delivered by source application because we get ack back when the message is delivered.


So, to be clear here, what do you mean by this:

1) the source application sends some kind of acknowledgement to a request to send a message when the message is sent?

2) You receive a Confirmation Of Delivery from the IBM software?

If 1, then that does not prove a message has been sent - it just proves the application thinks it has sent it. Poor error handling would give you an ack when no message has been sent.

If 2, a COD message proves it's been delivered and these messages are being read off before you can examine the queue through the Explorer (as indicated by your earlier claim that the messages appear in the active log).

You might (out of politeness if nothing else) indicate if there's a channel involves as 2 of us have asked and you've not answered.....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Fri Jul 03, 2015 9:13 am    Post subject: Reply with quote

Poobah

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

Vitor wrote:

If 2, a COD message proves it's been delivered ...

Good so far.

Vitor wrote:
... and these messages are being read off

COA would tell you that some app consumed a message.

Added for clarity to the OP.
_________________
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
Vitor
PostPosted: Fri Jul 03, 2015 9:13 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

And before any of the regular readers start crowing, yes I got the confirmation message type mixed up. Again. If the OP was sending a message to a queue that was not being consumed (because it can be browsed with MQE) then it would be a COA messages not a COD.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 03, 2015 9:14 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

bruce2359 wrote:
Vitor wrote:

If 2, a COD message proves it's been delivered ...

Good so far.

Vitor wrote:
... and these messages are being read off

COA would tell you that some app consumed a message.

Added for clarity to the OP.


Too late
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri Jul 03, 2015 9:15 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

bruce2359 wrote:
COA would tell you that some app consumed a message.

Added for clarity to the OP.


And trying to claw back some self respect, I did suggest the use of COD & COA messages earlier in this thread to check exactly what's happening...
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Fri Jul 03, 2015 9:20 am    Post subject: Reply with quote

Poobah

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

Vitor wrote:
bruce2359 wrote:
COA would tell you that some app consumed a message.

Added for clarity to the OP.


And trying to claw back some self respect, I did suggest the use of COD & COA messages earlier in this thread to check exactly what's happening...

I knew you knew all that. Haste makes typos. Done there, been that. Not to worry.

Alles vergeben.
_________________
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
Vitor
PostPosted: Fri Jul 03, 2015 9:24 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

bruce2359 wrote:
Not to worry.

Alles vergeben.


The Guilty Flee When No Man Pursues Them
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
tczielke
PostPosted: Fri Jul 03, 2015 10:30 am    Post subject: Reply with quote

Guardian

Joined: 08 Jul 2010
Posts: 941
Location: Illinois, USA

Since you are at 7.5, you can use the Application Activity Trace to help track this down. Here are some links for using the Activity Trace:

http://www.ibm.com/developerworks/websphere/library/techarticles/1306_bushby/1306_bushby.html

http://www.mqtechconference.com/sessions_v2014/MQTC_v2014_Tracing_On_Linux.pdf

I prefer using the amqsactz tool (documented in the second link), for working with the Activity Trace.
_________________
Working with MQ since 2010.
Back to top
View user's profile Send private message
Andyh
PostPosted: Mon Jul 06, 2015 3:21 am    Post subject: Reply with quote

Master

Joined: 29 Jul 2010
Posts: 239

If the MQPUT's show up in the recovery logs then the messages were persistent. Those logs will also show if the messages were transactional, and if so if the transactions were committed.

It's a little less trivial to match specific MQGET log records to specific MQPUT's, however it should be trivial to confirm from the recovery logs whether the number of messages removed from the queue matches the number of messages put to the queue (or whether the queue was purged), and whether any intran gets were not committed.

What do the CURDEPTH and UNCOM values of DISPLAY QSTATUS show ?
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 messages are Lost
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.