[
https://issues.apache.org/jira/browse/THRIFT-3744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15194551#comment-15194551
]
ASF GitHub Bot commented on THRIFT-3744:
----------------------------------------
GitHub user mygityf opened a pull request:
https://github.com/apache/thrift/pull/948
THRIFT-3744 The precision should be 17 (16 bits need after dot) after dot
for double type.
The precision is lost when converting double to string.
E.g:
double PI = 3.1415926535897931;
string value = format("%.16g", PI);
The value will be '3.141592653589793' and last 1 is lost after format
operation.
But expected value should be '3.1415926535897931'.
Solution:
string value = format("%.17g", PI);
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/gityf/thrift double-precision-17-bits
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/thrift/pull/948.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #948
----
commit 5a2b9cd39f6088dc5ccc726e7c0d483c5d7470ee
Author: Wang Yaofu <[email protected]>
Date: 2016-03-15T01:54:21Z
THRIFT-3744 The precision should be 17 (16 bits need after dot) after dot
for double type.
The precision is lost when converting double to string.
E.g:
double PI = 3.1415926535897931;
string value = format("%.16g", PI);
The value will be '3.141592653589793' and last 1 is lost after format
operation.
But expected value should be '3.1415926535897931'.
Solution:
string value = format("%.17g", PI);
----
> The precision should be 17 (16 bits need after dot) after dot for double type.
> ------------------------------------------------------------------------------
>
> Key: THRIFT-3744
> URL: https://issues.apache.org/jira/browse/THRIFT-3744
> Project: Thrift
> Issue Type: Bug
> Components: D - Library
> Affects Versions: 0.9.3
> Reporter: WangYaofu
> Assignee: WangYaofu
> Fix For: 0.10.0
>
>
> The precision is lost when converting double to string.
> E.g:
> double PI = 3.1415926535897931;
> string value = format("%.16g", PI);
> The value will be '3.141592653589793' and last 1 is lost after format
> operation.
> But expected value should be '3.1415926535897931'.
> Solution:
> string value = format("%.17g", PI);
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)