Fatal Error with MQ

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Fatal Error with MQ

Post by samyamkrishna »

Hi,

I am trying to put an XML in MQ.
It is giving the following FATAL Error message.

************************************************************
<MQ_Stage>: Error message (261982) exceeds the maximum message size (131056); dropping.

<MQ_Stage>: Error message (261984) exceeds the maximum message size (131056); dropping.
************************************************************

One important thing to notice is that, in the director the job gives a finished status even though there is a FATAL Error.

I went through other topics with the same error.
I have used the environment variables
$APT_PHYSICAL_DATASET_BLOCK_SIZE
$APT_MAX_TRANSPORT_BLOCK_SIZE
$APT_DEFAULT_TRANSPORT_BLOCK_SIZE
in the job and set them as '9999999' during run time.

I am not able to understand if its got something to do with MQ or with Datastage.

Let me know if there is a solution for this problem.

Regards,
Samyam
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Re: Fatal Error with MQ

Post by samyamkrishna »

additional information.

This error does not occur when the XML is small.
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

Check MQ itself...it has limits on message size also. Did you create the queue yourself?

Do you have access to the command line utilities of MQ? Do a display of the queue (display qlocal command of the runmqsc command, depending on your release of MQ).... there is a max message length value there....

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Post by samyamkrishna »

Hi Ernie,

I did not create the queue.
But I executed the command you said.

The MAX MESSAGE LENGTH is MAXMSGL(4194304). 4MB.
The big XML I am talking about for which i am getting the FATAL error is around 1 MB.

Regards,
Samyam
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

ok...good...so hopefully it is here on the DS side. There's a few APT variables you need to check that impact the size of a column on the link....I don't remember which ones at the moment, but if you search the forum here on MQ and XML you'll find them fairly quickly.

Also, if the MQ Server is co-resident with DataStage, it often helps to do a comparison with a Server Job, if only for debugging purposes.

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Post by samyamkrishna »

Hi Ernie,

Now I am putting the same XML into a dataset.
when i try to view the data inside the dataset i am getting the error

**********************************************
<_PEEK_IDENT_>: Error message (261992) exceeds the maximum message size (131056); dropping.
**********************************************

Againg this error comes only for big XML.

I also did some research on the APT Variable which impact the size of a column on the link.I dint find any correct link.

Is that variable not one of this.

$APT_PHYSICAL_DATASET_BLOCK_SIZE
$APT_MAX_TRANSPORT_BLOCK_SIZE
$APT_DEFAULT_TRANSPORT_BLOCK_SIZE

Regards,
Samyam
eostic
Premium Member
Premium Member
Posts: 3838
Joined: Mon Oct 17, 2005 9:34 am

Post by eostic »

:)

Don't try to view xml within a DataSet. Good luck with that! The viewer can't interpret it anyway, and can only show you a piece of it. Even if it works on short documents, view it instead the right way when testing --- send it to a sequential file, with all formatting turned off (no "end of line" and no quote characters). Write your xml with NO formatting and open it with IE or Firefox.

Did the Job "run" ok? If so, the content got thru the link.

Also, what did your Server Job do?

Ernie
Ernie Ostic

blogit!
<a href="https://dsrealtime.wordpress.com/2015/0 ... ere/">Open IGC is Here!</a>
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Post by samyamkrishna »

Hi Ernie,

I tried what you suggested.

I wrote the big XML into a sequential file.

then in another job i read the sequential file.(job design below)

RowGen-----XMLInput-------MQ

1.From Row Generator I am sending the file path.
2.In the XMLInput i am gave / for input and output derivation.
3.Then loaded it into MQ.

It worked perfectly fine. :D
The FATAL error has vanished. :D

Does this mean that we have to load the data to MQ in a sequential way when big XML's are involved?

Any way, My issue is resolved now. thanks to your approach.
Let me know if there is any other approach.

I am marking this topic as resolved.

Regards,
Samyam
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

You are just going to love the XML handling in version 8.5!
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
samyamkrishna
Premium Member
Premium Member
Posts: 258
Joined: Tue Jul 04, 2006 10:35 pm
Location: Toronto

Post by samyamkrishna »

Ha Ha :D
Just waiting for a chance to work on 8.5.
Post Reply