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 » TDS writer problem after switch form CSD2 to CSD5

Post new topic  Reply to topic
 TDS writer problem after switch form CSD2 to CSD5 « View previous topic :: View next topic » 
Author Message
compute_node
PostPosted: Wed Sep 17, 2003 7:45 am    Post subject: TDS writer problem after switch form CSD2 to CSD5 Reply with quote

Newbie

Joined: 17 Sep 2003
Posts: 2

Hi, i recently switched from WMQI CSD2 to CSD5 on a test machine.
After this i can no longer use TDS elements of fixed length with repeating compound types like before.
With CSD2 i could write out the compound type with any number of repetitions, even 0.

Now when deploying i get an error that the max occurs parameter ist not set, and if i set it, i have also to define default values for my fixed length elements and end with a lot of empty fields in my message.

I know that the TDS parser cannot parse this kind of format, but the TDS writer could write it with CSD2.

Does someone else have the same problem and mybe a solution for it.

I found some interesting topics concerning similar problems:
Fixed Length Tagged/Delimited Format
http://www.mqseries.net/phpBB2/viewtopic.php?t=10331&highlight=repeat

Repeat value of with TDS? WMQI 2.1 CSD 4
http://www.mqseries.net/phpBB2/viewtopic.php?t=10331&highlight=repeat
Back to top
View user's profile Send private message
Craig B
PostPosted: Fri Sep 19, 2003 8:58 am    Post subject: Reply with quote

Partisan

Joined: 18 Jun 2003
Posts: 316
Location: UK

Hi,

The change in behaviour you have experienced is as a results of a problem that was fixed from CSD02 to CSD03. In CSD02, you should not have been allowed to deploy a messageSet that contained an unknown number of fixed length repetitions. The TDS wire formant cannot handle an unknown number of fixed repetitions because it would not know where they end. Ie if an element appeared after these unbounded repeating fixed length element/structure, then how would it know where the repetitions end and this next element begins? Therefore the TDS writer needs to write a fixed number of repetitions on the basis that it could have to parse this message again afterwards, and it needs to know how many to parse. The only way to do this is write maxOccurs number of repetitions, hence the model now forces you to fill one in. Obviously if this is the last element in the message definition then it would be useful if the TDS wire format supported this unknown number of repetitions at the end of a message. The TDS parser can cope with this and will parse until the end of the bitstream is reached, however, the TDS writer cannot yet support a repeat until end of bitstream. This is a known requirement for the TDS parser to support.
_________________
Regards
Craig
Back to top
View user's profile Send private message
compute_node
PostPosted: Tue Sep 23, 2003 11:11 pm    Post subject: Reply with quote

Newbie

Joined: 17 Sep 2003
Posts: 2

Hi Craig,
i would not call a problem, but a useful feature. I do not require to parse my TDS format again after i have written it out. One can always produce an unparseable format using TDS, for example by using the same delimter or tag for different kinds of compound types.

I do not want to go back to my old method, cutting pieces out my tree and parsing line by line to blob pieces. There's also the problem of loop count and memory consumptions when using node loops to parse/write and clueing the blobs together.

In one flow i no use an intermediate solution, putting a wrapper compound type arround my fixed lenght line which has a space as delimter and cut the last byte of my line. But this leaves my last byte unusable. This TDS format also would never be parseable again.

Are there other know solutions for writing out an unkown number of repeating fixed length lines (without crlf or other delimters or tags).
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 » TDS writer problem after switch form CSD2 to CSD5
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.