[
https://issues.apache.org/jira/browse/THRIFT-3433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15018625#comment-15018625
]
Jens Geyer commented on THRIFT-3433:
------------------------------------
THRIFT-110 holds [the spec for
compact|https://issues.apache.org/jira/secure/attachment/12398366/compact-proto-spec-2.txt].
For double it only says:
{code}
double => (8-byte double)
{code}
I would interpret that as "double like in binary protocol", hence in
network-byte-order. [In the old wiki there's some more
information|https://wiki.apache.org/thrift/New_compact_binary_protocol]. If in
doubt, Java and Ruby are the ones part of the original implementation, so they
probably represent the current law.
> Doubles aren't interpreted correctly
> ------------------------------------
>
> Key: THRIFT-3433
> URL: https://issues.apache.org/jira/browse/THRIFT-3433
> Project: Thrift
> Issue Type: Bug
> Components: Haskell - Library
> Affects Versions: 0.9.3
> Reporter: Tom Lippincott
>
> When reading in a string-to-double map from the identical file using the
> Compact protocol, Python gives the correct values:
> ...
> u'roh': -12.012431158160835
> ...
> but Haskell is totally off:
> ...
> ("roh",6.355136015066463e-157)
> ...
> The funny thing is, if I read it into Haskell (and the numbers are all off),
> then write it out to another file, that file still has correct numbers when
> loaded into Python. So it seems that the raw information is being
> (de)serialized correctly at the bit-level, but Haskell isn't interpreting it
> as a double the same way as Python...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)