Open
Description
Describe the bug
Datastore has inconsistent support for the max/min values that can be stored for for integer types. The following mix/max values are supported in each platform.
iOS Max: 2^53 (larger values can be saved, but the incorrect value will be returned when queried)
iOS Min: -(2^63) (min 64 bit int)
Android Max: 2^31 - 1 (max 32 bit int)
Android Min: -(2^31) (min 32 bit int)
To Reproduce
Steps to reproduce the behavior:
- Create a sample app with a model that has an int value
- Save a model that has a value larger/smaller than the values listed above
- Query the model and compare it to the saved value
- The queries will either fail, or the value will not save correctly
Expected behavior
- Both platforms should support the same min/max values
- max/min
64 bit32 bit integers should be supported - attempting to save a value small/larger than the min/max value should fail with a clear exception
Platform
Amplify Flutter current supports iOS and Android. This issue is reproducible in (check all that apply):
[x] Android
[x] iOS
Metadata
Metadata
Assignees
Labels
Something is not working; the issue has reproducible steps and has been reproducedIssues related to the DataStore CategoryIssues specific to the iOS PlatformIssues that result in inconsistent behavior between support platformsThis issue is the result of an underlying Amplify iOS issue that needs to be fixed.