You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Jeff Whiting (JIRA)" <ji...@apache.org> on 2011/05/23 18:35:47 UTC

[jira] [Commented] (THRIFT-729) I64 types improperly written via TBinaryProtocolAccelerated

    [ 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