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 » Fragmented messages

Post new topic  Reply to topic
 Fragmented messages « View previous topic :: View next topic » 
Author Message
mattfarney
PostPosted: Fri Feb 26, 2010 2:39 pm    Post subject: Fragmented messages Reply with quote

Disciple

Joined: 17 Jan 2006
Posts: 167
Location: Ohio

WBIMB 5.0
On rare circumstances, I am seeing messages that appear to be fragmented/corrupted. I've seen two different styles of this behavior, but the occurances are extremely low (3-5 instances out of maybe 100 million transactions). I'm using WBIMB to route XML. The content is unchanged, though a copy of the original message is tagged and sent to a recording process outside of WBIMB.

As an example, I'll use this basic XML:
Code:
<?xml><Presidents><President><Name>George Washington></Name></President></Presidents>


One version appears to be message collision:
Code:
<?xml><Presidents><President><Name>George Washington></NaJefferson</Name></President></Presidents>


Another is latent content at the end of the message
Code:
<?xml><Presidents><President><Name>George Washington></Name></President></Presidents><Name>Thom


The problem does not appear to be repeatable and is very hard to isolate given its infrequency. Anyone else seen anything like this?

-mf
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Sat Feb 27, 2010 9:44 pm    Post subject: Reply with quote

Grand High Poobah

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

Matt,

What you describe makes me think that you have somewhere a process that is multi-threaded but that is not thread-safe. Like a singleton declaring a variable to hold information that is written back to the output. Or some process missing an ATOMIC modifier... or a variable declared as shared instead of using Environment.Data ... etc...

You would then get the occasional collision.

Worst case scenario: memory corruption, possibly due to not enough memory / paging on the box / allocated to the process / bug in OS etc ...

Hope it helps some
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
mattfarney
PostPosted: Fri Jul 23, 2010 3:50 pm    Post subject: Reply with quote

Disciple

Joined: 17 Jan 2006
Posts: 167
Location: Ohio

Had another one of these a few days ago.

My basic WBIMB flow for these will send a copy to an outside process to log, process the message through a few message flows, and then send the original message outbound to one or more recipients - and another copy to the outside process to log. I'm not modifying the content (in this particular flow) at all. It's all routing.

Given that all of the logging timestamps are the same, I'm assuming there was no huge load on the server. (The logging process is on a different machine.) The input xml was 3630 characters and the result xml was 1088 characters. I have no code where 1088 characters would be meaningful. The BOD literally ends in the middle of a field label.

The only thing I can think of is running out of memory.
My problem is that this is so obscure that I cannot really open a PMR for. We are talking 1 per million or rarer.

Is there anything else I should be looking at? DB2 logs? System logs?

-mf
Back to top
View user's profile Send private message
mqjeff
PostPosted: Sat Jul 24, 2010 8:21 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Aside from the difficulty in tracking down the issue, you wouldn't be able to open a PMR in the first place as WBIMB v5.0 is unsupported.



If you think the issue is that Broker is running out of memory, then you should be monitoring the memory usage of the broker processes, and keeping history. Then when you notice an event, you can review the memory usage at that time.

More importantly, you should review your flow for how it does actually handle the message flow data.

And if you're really not actually modifying the Root tree at all, you should be avoiding using Compute Mode that includes Message, so that you aren't making repeated and computationally wasteful calls to CopyEntireMessage.

But fundamentally, you need to upgrade to at least WMB v6.1. V6 is going out of support next April, so you shouldn't waste your migration time.

Just Do It.
Back to top
View user's profile Send private message
mattfarney
PostPosted: Mon Jul 26, 2010 8:39 am    Post subject: Reply with quote

Disciple

Joined: 17 Jan 2006
Posts: 167
Location: Ohio

Believe me, upgrading would be wonderful.

My concern is that if there is an issue in something I'm doing (or a memory issue) it is unlikely to go away with an upgrade. If it's a db issue, it probably will go away.

I guess I'm in the wrong business if I expect certainty in behavior...

-mf
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 » Fragmented messages
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.