Sometimes a change to a numeric attribute value with a long length may appear to be overridden by Algolia. For example, trying to set an attribute value of "9182470180325827" will update the record with "9182470180325828" instead.
A safe integer is an integer that:
- can be exactly represented as an IEEE-754 double precision number, and
- whose IEEE-754 representation cannot be the result of rounding any other integer to fit the IEEE-754 representation
The safe integers consist of all integers from -(2^53 - 1) inclusive to 2^53 - 1 inclusive (± 9007199254740991 or ± 9,007,199,254,740,991).
A workaround for this issue is to represent the attribute values as a string. Note that this may require updating code to account for the change.