You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Phillip Cloud (JIRA)" <ji...@apache.org> on 2017/10/28 17:30:00 UTC
[jira] [Created] (ARROW-1749) [C++] Handle Min and Max Decimal128
values
Phillip Cloud created ARROW-1749:
------------------------------------
Summary: [C++] Handle Min and Max Decimal128 values
Key: ARROW-1749
URL: https://issues.apache.org/jira/browse/ARROW-1749
Project: Apache Arrow
Issue Type: Bug
Components: C++
Affects Versions: 0.7.1
Reporter: Phillip Cloud
Assignee: Phillip Cloud
Fix For: 0.8.0
{{2 ** 127 - 1}} and {{-2 ** 127}} both require a 39th digit to be displayed as a decimal string.
This means we do not have the ability to _display_ decimal values above {{10 ** 38 - 1}} even though we have the ability to _store_ them.
For reference, Impala returns {{NULL}} when trying to cast {{2 ** 127 - 1}} to {{DECIMAL(38, 0)}}.
A few next steps are in order:
# Explicitly test this behavior
# Avoid crashing or displaying garbage when we cannot display a number that can be stored
# Make a decision about whether we want to eventually support range of values from {{10 ** 38}} to {{2 ** 127 - 1}} positive and {{-2 ** 127}} to {{-10 ** 38}} negative. This would require a larger integer type to hold the value just before being converted to a string.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)