-
Type:
Task
-
Resolution: Won't Fix
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Workload Resilience
-
Workload Resilience 2025-10-13, Workload Resilience 2025-10-27, Workload Resilience 2025-11-10
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Just like the Shard class make use of runWithRetryStrategy to properly retry with a backoff, KeysCollectionClientDirect should also consider using a retry strategy instead of implementing its own loop.
The predicate isRetriableError should also be updated to handle kStrictlyNotIdempotent. Using a switch case without a default and a unreachable statement at the end should enable warnings and clang-tidy to warn us of added enumerators instead of triggering the invariant.
See SPM-4003 for more detail on retryability.