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 » MRM validation fails in XML format

Post new topic  Reply to topic
 MRM validation fails in XML format « View previous topic :: View next topic » 
Author Message
siri2083
PostPosted: Thu Jul 16, 2009 11:10 pm    Post subject: MRM validation fails in XML format Reply with quote

Apprentice

Joined: 16 Apr 2009
Posts: 39

Hi,

i am using a complex message set of xml message foramt. My flow is looks like: MQInputNode------>COmputeNode----->MQOutputNode.

in the input node properties, i have set below properties:
Message Domain,Message set, Message Type, Message format and in parsing Options tab parse timing as 'immediate' and validation tab validate = 'Content and Value', failure action as 'Exception list'.

Now my Xsd for creating the messageset is:

<xsd:schema version="0.14" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="contract" type="ContractType" />
<xsd:complexType name="ContractType">
<xsd:sequence>
<xsd:element minOccurs="0" name="contractID" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="unbounded" name="billingSummary" type="BillingSummaryType" />
</xsd:sequence>
</xsd:complexType>

<xsd:complexType name="BillingSummaryType">
<xsd:sequence>
<xsd:element minOccurs="0" name="billingSummaryID" type="xsd:string" />
<xsd:element minOccurs="0" name="paymentsRemaining" type="xsd:string" />
<xsd:element minOccurs="0" name="frequencyModeCode" type="xsd:string" />
<xsd:choice>
<xsd:element minOccurs="0" name="paymentSourceBankAccount" type="xsd:string" />
<xsd:element minOccurs="0" name="paymentSourceChargeCard" type="xsd:string" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>

I want to check the validation of input message. so written the a wrong message:

Input:

<contract>
<contractID>123456</contractID>
<billingSummary>
<billingSummaryID>B123</billingSummaryID>
<!-- Chioce elements is missed to make the input message invalid--> </billingSummary>
</contract>

Now the problem is: When i drop above message in the input Queue of my flow. it is picked by the flow, but it is not showing where this message went.

in the even viewer below exception is: Message flow 'MyFlow_MF' could not be reconfigured because it remained busy for longer than the timeout period of '300000'

A request to reconfigure the message flow 'MyFlow_MF' was received but this could not be processed because it remained busy processing a message for longer than the timeout specified.

This can be caused by the timeout being too short considering the complexity of the flow and the size of the messages being processed. In such cases the timeout should be increased. It can also be caused by message flows containing infinite loops. In such cases the SQL should be corrected.


Even DB2 is throwing exception saying:

2009-07-17-11.14.58.859000 Instance:DB2 Node:000
PID:13132(db2fmp.exe) TID:13096 Appid:none
Health Monitor HealthIndicator::update Probe:500

ADM10500E Health indicator "Monitor Heap Utilization" ("db2.mon_heap_util")
breached the "upper" alarm threshold of "95 %" with value "124 %" on "instance"
"DB2". Calculation: "((db2.mon_heap_cur_size/db2.mon_heap_max_size)*100);" =
"((344064 / 278528) * 100)" = "124 %". History (Timestamp, Value, Formula): "
(07/17/2009 11:09:13.140000, 6, ((16384 / 278528) * 100)), (07/17/2009
11:04:13.359000, 6, ((16384 / 278528) * 100)), (07/17/2009 10:59:13.484000, 6,
((16384 / 278528) * 100)), (07/17/2009 10:55:47.156000, 6, ((16384 / 278528) *
100)), (07/17/2009 10:49:13.265000, 6, ((16384 / 278528) * 100)), (07/17/2009
10:44:13.187000, 6, ((16384 / 278528) * 100)), (07/17/2009 10:39:13.578000, 124,
((344064 / 278528) * 100)), (07/17/2009 10:35:30.109000, 6, ((16384 / 278528) *
100)), (07/17/2009 10:29:13.125000, 6, ((16384 / 278528) * 100))"


My understanding is if the incoming message fails, it should go to fail terminal of the input node. and in the variables column it will shown for element the validation is failing.

which is not happening in the above scenario.

Can any body please tell me why this is not shown in the debuger. where could be the problem.
Back to top
View user's profile Send private message
smdavies99
PostPosted: Fri Jul 17, 2009 1:51 am    Post subject: Reply with quote

Jedi Council

Joined: 10 Feb 2003
Posts: 6076
Location: Somewhere over the Rainbow this side of Never-never land.

AFAIK, the DB2 error is not directly related to that of the Flow.

I've seen DB2 issue many messages of this type when used in broker environments and can be pretty well eliminated by DB2 Tuning.

On the subject of the Flow,
Have you taken a user trace of the message as it is processed? This could well have more information that will help the diagnosis.

The title of your entry includes "MRM". Is there a particular reason for using the MRM-XML Parser in this flow? If not then I'd suggest changing it to use the XMLNSC parser.
_________________
WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995

Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions.
Back to top
View user's profile Send private message
vmcgloin
PostPosted: Fri Jul 17, 2009 4:46 am    Post subject: Reply with quote

Knight

Joined: 04 Apr 2002
Posts: 560
Location: Scotland

Could it be that your deploy has not completed because you have a previous debug session still in progress? That might explain why the behaviour is not what you expect. Incidentally, I second the question about why you are using MRM.
Back to top
View user's profile Send private message
kimbert
PostPosted: Sun Jul 19, 2009 2:17 pm    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

If the debugger is connected, disconnect it before you do anything else.
The debugger can be a very useful tool, but it is not useful for diagnosing parsing issues.
I always recommend the use of Trace nodes and user trace.
Back to top
View user's profile Send private message
siri2083
PostPosted: Tue Jul 28, 2009 5:58 am    Post subject: Reply with quote

Apprentice

Joined: 16 Apr 2009
Posts: 39

Hi All,

Thanks for the reply. i just came back from my vacation and sorry for the late response.

DB2 errors are removed by setting the configuration parameters.

Debbuger, user trace and trace nodes are working fine when i place the correct input message.

I want to check the validation of incoming message.

when i place the incorrect message,none of the above debugging mechanisms are giving the clue of message validation fails.

in the eventviwer and event log,i could only find the below error messages:

Message flow 'MyFlow_MF' could not be reconfigured because it remained busy for longer than the timeout period of '300000'

A request to reconfigure the message flow 'MyFlow_MF' was received but this could not be processed because it remained busy processing a message for longer than the timeout specified.

This can be caused by the timeout being too short considering the complexity of the flow and the size of the messages being processed. In such cases the timeout should be increased. It can also be caused by message flows containing infinite loops. In such cases the SQL should be corrected.


Execution group ''default'' received an invalid configuration message. See the following messages for details of the error.

The message broker received an invalid configuration message and has not updated its configuration. This can arise as a result of errors in the specification of either message flows or message sets which the configuration manager was unable to detect. It can also result from a message flow requiring a type of node that is not supported by the broker installation, from the broker having become out of step with the configuration database or from other applications sending extraneous messages to the broker's configuration queues (SYSTEM.BROKER.ADMIN.QUEUE & SYSTEM.BROKER.EXECUTIONGROUP.QUEUE).

Check the relevant message flow and message set definitions, check that all necessary user-defined extensions are installed, perform a complete redeploy of the broker's configuration and ensure that no applications are writing to the broker's configuration queues.


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 » MRM validation fails in XML format
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.