You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ee.List.shuffle(seed=False) returns non-deterministic results from the same invocation, which means that equality checks on server side objects incorrectly pass causing false-positive cache hits. You can easily confirm this with:
Repeated calls will generate different results but hit the same cache, displaying the wrong data. This will affect lists and anything generated from shuffled lists, e.g. a FeatureCollection generated from a list of coordinates.
To fix this, I'll need to add a function that parses each Earth Engine object's invocation string (just get the string repr for the object) and prevents caching if List.shuffle is found.
I've tested every other Earth Engine method that takes a random seed, and this is the only one that acts non-deterministically.
The text was updated successfully, but these errors were encountered:
ee.List.shuffle(seed=False)
returns non-deterministic results from the same invocation, which means that equality checks on server side objects incorrectly pass causing false-positive cache hits. You can easily confirm this with:Repeated calls will generate different results but hit the same cache, displaying the wrong data. This will affect lists and anything generated from shuffled lists, e.g. a
FeatureCollection
generated from a list of coordinates.To fix this, I'll need to add a function that parses each Earth Engine object's invocation string (just get the string repr for the object) and prevents caching if
List.shuffle
is found.I've tested every other Earth Engine method that takes a random seed, and this is the only one that acts non-deterministically.
The text was updated successfully, but these errors were encountered: