[
https://issues.apache.org/jira/browse/ARROW-1800?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17658831#comment-17658831
]
Rok Mihevc commented on ARROW-1800:
-----------------------------------
This issue has been migrated to [issue
#17797|https://github.com/apache/arrow/issues/17797] on GitHub. Please see the
[migration documentation|https://github.com/apache/arrow/issues/14542] for
further details.
> [C++] Fix and simplify random_decimals
> --------------------------------------
>
> Key: ARROW-1800
> URL: https://issues.apache.org/jira/browse/ARROW-1800
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Affects Versions: 0.7.1
> Reporter: Phillip Cloud
> Assignee: Phillip Cloud
> Priority: Major
> Labels: pull-request-available
> Fix For: 0.8.0
>
>
> {{UniformDecimalDistribution}} currently generates values outside the range
> specified for the given precision in cases where the number of bytes required
> to represent a decimal value was less than or equal to 8.
> For example, for a 1 byte value the range is -128, 127 for the low bits and
> -1, 0 for the high bits. In cases where the low bits generated a negative
> number and the high bits generated a zero value the number can end up being
> much larger than desired.
> It's much easier to just generate {{N}} random bytes and sign extend based on
> the sign bit of the last byte.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)