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 » WebSphere Message Broker (ACE) Support » aggregate timeout but all messages received

Post new topic  Reply to topic
 aggregate timeout but all messages received « View previous topic :: View next topic » 
Author Message
pjaffe
PostPosted: Wed Jan 04, 2006 10:35 am    Post subject: aggregate timeout but all messages received Reply with quote

Novice

Joined: 03 Sep 2004
Posts: 13

I have an aggregation that occasionally (freq. < 1%, volume>500 per day) times out even though all replies were received well within the timeout interval. Any idea why this would occur?

The environment is WBIMB v5 CSD4 running on Windows 2000 advance server.
Back to top
View user's profile Send private message
JT
PostPosted: Wed Jan 04, 2006 4:16 pm    Post subject: Reply with quote

Padawan

Joined: 27 Mar 2003
Posts: 1564
Location: Hartford, CT.

How do you determine that "all replies were received well within the timeout interval" ?

Do you record a trace event when the fan-out messages arrive on their respective queue(s)?
Back to top
View user's profile Send private message
pjaffe
PostPosted: Thu Jan 05, 2006 6:41 am    Post subject: Reply with quote

Novice

Joined: 03 Sep 2004
Posts: 13

I have a trace node wired to the timeout terminal on the aggregation node that dumps the messages each time the terminal fires. That is how I know that I have received all of the messages.
Back to top
View user's profile Send private message
x061294
PostPosted: Thu Jan 05, 2006 11:10 am    Post subject: Reply with quote

Acolyte

Joined: 05 Apr 2005
Posts: 62

So I think you're saying that you have a trace node wired to the timeout terminal, and, when it passes through this node it writes out the message and in the Root.ComIbmAggregateReplyBody.... you see all the replies ? Do you always generate the same number of request messages?

You could look in the BAGGREGATE table and see if there are row's in there for responses that you weren't expecting?

Beyond that, we've never had that type of issue with aggregation. Once the first x number of reply message arrives, the BAGGREGATE is updated, and, once the last arrives, the messages are propagated. I've always wondered if the last reply actually posts to the database first and then all replies are pulled back in, or, if the last reply realizes that it's the last reply and just retrieves the previous replies, but either way it wouldn't matter. We've never seen all the row's in the table associated with one transaction updated but the transaction just waiting.
Back to top
View user's profile Send private message
pjaffe
PostPosted: Thu Jan 05, 2006 11:35 am    Post subject: Reply with quote

Novice

Joined: 03 Sep 2004
Posts: 13

We are dumping the Root.ComIbmAggregateReplyBody tree in the trace node and yes, that is how we are identifying that all replies were received. Each time the transaction is called a fixed number of responses is expected back.

At what point in time would I look for items in the BAGGREGATE table? Just after the timeout or even days later? How would I associate them with the original timeout message? Why would this even cause the timeout to fire? wouldn't it cause the UnknownMessage terminal to fire instead?

I realize that this problem should not be occuring with the given circumstance, but it appears to be and on several brokers all running the same transaction.

Should I open a PMR?
Back to top
View user's profile Send private message
x061294
PostPosted: Fri Jan 06, 2006 5:09 am    Post subject: Reply with quote

Acolyte

Joined: 05 Apr 2005
Posts: 62

The data in the BAGGREGATE table is created initially from your AggregateRequest node where it writes some basic information about the request message. Then, when the reply comes back, the AggregateReply will update the row in the database with the actual reply message. So if there are 2 replies expected back, you should see (depending on how fast you look and how fast the replies come back) two row's in the database with empty BLOB fields for the data. This is what I was suggesting, is that you could look to see if you were expecting to see 2 row's, but, you see three row's. This would have to be done while waiting for replies. Once the time window has expired, the reply messages that have been received are removed from the database and sent to the timeout terminal.

In order for the flow to propagate to the timeout terminal, there would have needed to be expecting more replies than you got (expecting 3, only received 2). The unknown message terminal is if you're expecting three replies and you get back a message but it doesn't match any of the correlation id's that are logged in the database.

Is there any way for you to log separately how many request messages you've sent out, so, when you get something down the timeout path and you think it has all the replies that you could see if you really did ask for that many, or, if you asked for 1 more than you thought you did?

Is it possible that you're reusing message id's and somehow that's confusing the borker and the synching up of replies?

You certainly can open a PMR and see if they can help point you in some direction.
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 » WebSphere Message Broker (ACE) Support » aggregate timeout but all messages received
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.