Skip to content

[Due for payment 2025-11-18] [$250] Update error handling in Onyx to prevent unnecessary data eviction #73779

Description

@mountiny

Coming from this proposal

Proposal: Update error handling in Onyx to prevent unnecessary data eviction

Background

For the last 7 days, about 7+ million logs with [Onyx] Failed to save to storage ... were reported from different users. Currently, for all errors triggered by Onyx.set, Onyx.multiSet, and Onyx.mergeCollection, the evictStorageAndRetry function is invoked.

Problem

When evictStorageAndRetry runs without verifying whether the error is storage-capacity related, it always tries to evict user data, causing loss of important information and degraded UI performance (e.g., Hidden items in the LHN when a parent report action is evicted)

Solution

Update evictStorageAndRetry function to evict storage only if the error is storage capacity related.
Draft PR: https://github.com/Expensify/react-native-onyx/pull/694/files

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021983595890962023765
  • Upwork Job ID: 1983595890962023765
  • Last Price Increase: 2025-10-29
  • Automatic offers:
    • abzokhattab | Reviewer | 109523935
Issue OwnerCurrent Issue Owner: @twisterdotcom
Issue OwnerCurrent Issue Owner: @VickyStash

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2ExternalAdded to denote the issue can be worked on by a contributor

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions