GitHub user sounakr opened a pull request:
https://github.com/apache/carbondata/pull/1763
[CARBONDATA-1984] Double Compression Codec Rectification.
Double datatype compression done through AdaptiveFloatingDelta
AdaptiveFloating codec is not returning expected output. These two codec for
double compression multiple double with another double. Double multipled with
double doesnt give exact output, 1.2 ie one-and-one-fifth can't be exactly
represented as a binary fraction. You get close with
one-and-an-eigth-and-a-sixteenth.... but never exactly one-fifth.
So due to the multiply and substract to encode the data, there are some
loss of precision and we give a different output when encoded.
- [ ] Any interfaces changed? No
- [ ] Any backward compatibility impacted? No
- [ ] Document update required? No
- [ ] Testing done Yes
Please provide details on
- Whether new unit test cases have been added or why no new tests
are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance
test report.
- Any additional information to help reviewers in testing this
change.
- [ ] For large changes, please consider breaking it into sub-tasks under
an umbrella JIRA. NA
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/sounakr/incubator-carbondata
double_datatype_roundoff
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/carbondata/pull/1763.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 #1763
----
commit 6ede959fef92c017818755e6be311b0794e3566d
Author: sounakr <sounakr@...>
Date: 2018-01-04T09:45:42Z
[CARBONDATA-1984] Double Compression Codec Rectification. Use RoundUp in
case double is multipled with double to get consistant result.
----
---