[
https://issues.apache.org/jira/browse/THRIFT-729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13038031#comment-13038031
]
Jeff Whiting commented on THRIFT-729:
-------------------------------------
This looks to be fixed by THRIFT-1067. On 64 bit systems it just passes it
through. On 32 bit it converts it to a double.
> I64 types improperly written via TBinaryProtocolAccelerated
> -----------------------------------------------------------
>
> Key: THRIFT-729
> URL: https://issues.apache.org/jira/browse/THRIFT-729
> Project: Thrift
> Issue Type: Bug
> Components: PHP - Library
> Affects Versions: 0.3
> Environment: 32-bit linux (tested centos, ubuntu, debian)
> Reporter: Michael Pearson
>
> When TBinaryProtocolAccelerated writes an I64 to the network derived from a
> 32-bit PHP 'float' type, the value is incorrectly attributed a sign.
> Writing round(microtime(true) * 1000, 3) for instance, will appear on the
> server as something like -379667704. This is implemented fine in
> TBinaryProtocol.php, it only looks to affect the php module compiled for a
> 32-bit system (htonll might not be cutting it).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira