-
-
Notifications
You must be signed in to change notification settings - Fork 796
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
Jackson changes additional values to infinite in case of special JSON structures and existing infinite values #1397
Comments
This seems like #1391 to me. A bug that added in 2.15.0. Hopefully, there will be releases soon to address this. Could you try 2.18.3-SNAPSHOT? |
Thank you very much for this information. The problem also occurs with 2.18.3-SNAPSHOT, but seems to be fixed in 2.19.0-SNAPSHOT. |
Thanks @Rodenstock - it does look like the parts of the 2.19 fix that we backported and thought were enough - that these may not be enough and that we may need to backport the full 2.19 change. |
This reverts commit 00208a8.
This reverts commit e8b456a.
@pjfanning makes sense given that 2.19 fully clears But the question then is whether more tweaking helps, or should we just backport full 2.19 fix. |
Is there anything else to backport after #1400 ? |
I don't think so. |
I can't guarantee that there are no more edge cases but #1400 fixes this latest issue. This seems to differ from the original case because instead of a normal int, the first number here is a very long int (big int). So far, there is no evidence of numbers with decimal points leaking into following numbers. |
Without this fix, I think |
Fix merged: will be in
|
With infinite values of float types and the following JSON structure, Jackson unexpectedly changes additional values since version 2.18.0.
Radius is originally set to infinity (1.7976931348623157e+308). After selecting the value as JSONB from a PostgreSQL database and serializing it to JSON, the value of center.x is also set to infinity (1.7976931348623157e+308).
All versions greater than or equal to 2.18.0 are affected.
The last working version is 2.17.3.
Jackson serializes the JSON-Object into the following JSON:
Below is the code for reproducing the issue.
The text was updated successfully, but these errors were encountered: