[This message was posted by Naresh Maharaj of Instinet Europe plc 
<[email protected]> to the "FAST Protocol" discussion forum at 
http://fixprotocol.org/discuss/46. You can reply to it on-line at 
http://fixprotocol.org/discuss/read/ff0eab95 - PLEASE DO NOT REPLY BY MAIL.]



Hi Dale

Thank you for the response and the behaviour you mentioned below is being used 
and is inherent in the copy operator I use as below:

long segmentLength = copyOperatorForInt(buffer, TypeDefs.NoMDEntries, 
pmapBits[pmapCounter--]);

This same line is working on several other messages.

The message in question is a single message that has been cut out of the stream 
for playback.

When I play the single message back via openfast I get the result perfectly.

8=FIXT.1.1,35=W,1128=7,49=SWXGROUP-MDI.P01,56=SWXGROUP-MDC,34=19341,97=N,52=20091028-05:11:05.849,1021=1,48=CZ0001000749,22=4,268=1
 

Am confident that I am reading the bytes correctly in my app and have gone 
through every bit..

As it is a single message there is no prev value in the dictionary. Hence I end 
up getting the pmap bit zero for the length and when going to check the 
dictionary it is undefined and no initial value hence ERR D5 (InitialValue NULL 
and Mandatory)

It leads me to suggest that if the pmap bit concludes that the segment length 
is not in the stream that it should default to a minimum of 1.

This is my own interpretation which I prefer not to use but I cant see any 
other option here.

Naresh 

> And of course when I said "segment" in my message below, I meant
> "Sequence".
> 
> Dale
> 
> > Hi Naresh,
> >
> > > > Is it possible to have a sequence as below where the pmap bit is
> > > > set to false for the length of the sequence.
> > > >
> > > > [sequence name="MDEntries"] [typeRef name="MDIncGrp"/] [length
> > > > name="NoMDEntries" id="268"] [copy/] [/length] [string
> > > > name="MDUpdateAction" id="279"] [copy value="0"/] [/string] [!--
> > > > 0: New --] ....
> > > >
> > > > The field [length name="NoMDEntries" id="268"] [copy/] [/length]
> > > >
> > > > has a false in the pmap bit
> > > >
> > > > Therefore am not sure who many times to iterate through the
> > > > sequence
> > > >
> >
> > The pmap bit associated with a segment applies to the length field of
> > the segment. This pmap bit tells you whether the length appears on-the-
> > wire. What it means when the length does not appear on-the-wire is
> > determined by the operator associated with the length field.
> >
> > In your case the length field of the sequence has a copy operator. The
> > zero pmap bit is telling you that the sequence length does not appear
> > on-the-wire. Instead you should re-use the previous length value from
> > the appropriate dictionary.
> >
> > Dale
> > --
> > Dale Wilson Principal Software Engineer Object Computing, Inc.
> > (www.ociweb.com) Lead developer for QuickFAST (http:www.quickfast.org)


[You can unsubscribe from this discussion group by sending a message to 
mailto:[email protected]]

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Financial Information eXchange" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/fix-protocol?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to