-
Notifications
You must be signed in to change notification settings - Fork 915
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Potential overflow of decimal32
when casting to int64_t
#9287
Potential overflow of decimal32
when casting to int64_t
#9287
Conversation
rerun tests |
Great job on the quick fix. |
@shwina Currently, Python tests are failing: E AssertionError: Series are different
E
E Series values are different (30.0 %)
E [index]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
E [left]: [14.0, 2.0, nan, 0.0, 1844674399.0, nan, 94.0, 1844674295.0, 1844674399.0, nan]
E [right]: [14.0, 2.0, nan, 0.0, 1.8446744073709552e+19, nan, 94.0, 1.8446744073709552e+19, 1.8446744073709552e+19, nan] The input sequence is: @pytest.mark.parametrize(
"data",
[
cudf.Series(
[
14.12309,
2.343942,
np.nan,
0.0,
-8.302082, # failing
np.nan,
94.31308,
-112.2364, # failing
-8.029972, # failing
np.nan,
]
),
],
) So although it seems like the previous behaviour was consistent with arrow, negative numbers seem to not be working. This looks like an orthogonal issue to the current bug. Do you agree? or is the previous behaviour expected? Note: This was the PR that added these tests: #7450 |
@ashwin And I just had a short call and diagnosed the issue was that we were using |
rerun tests |
Codecov Report
@@ Coverage Diff @@
## branch-21.12 #9287 +/- ##
================================================
+ Coverage 10.79% 10.80% +0.01%
================================================
Files 116 116
Lines 18869 19321 +452
================================================
+ Hits 2036 2087 +51
- Misses 16833 17234 +401
Continue to review full report at Codecov.
|
@gpucibot merge |
This bug fixes #9281.
The issue is that we should be using
std::common_type_t
for explicit casting between different types to avoid overflow. That fix has been applied.