[This message was posted by Rolf Andersson of Pantor Engineering <[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/93046b40 - PLEASE DO NOT REPLY BY MAIL.]
Hi Janaka, you need to use a 65-bit encoding of the delta and you need to process the two 64-bit quantities with possible over/underflow in mind. For the rest of the readers: This is an implementation issue. The wire encoding already has to handle 64 bit quantities (requiring 10 bytes of wire data). The same wire representation would handle 65 bits (indeed 10 SBIT-coded bytes can represent up to 70 bits of data). It is rather about your internal representation of the delta. You have to find a way to detect and process the 65-bit case as a 64-bit quantity may over/underflow if you perform a 64-bit subtraction operation between two 64-bit quantities. (Please refer to the Note in section 6.3.7.1 of the FAST specification) Best, Rolf > If base value is -9223372036854775808 and input value is 9223372036854775807 > then delta value is > (-9223372036854775808) - 9223372036854775807 = -18446744073709551615. > then that delta value is exceed the 64 bit integer range. > > In such case which transfer encoding method should be use for 64bit integers > with Delta operator? [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.
