sunnylqm / react-native-storage

local storage wrapper for both react-native and browser. Support size controlling, auto expiring, remote data auto syncing and getting batch data in one query.
MIT License
3.02k stars 268 forks source link

Incomplete Cleanup of Key_ID Entries in _m After removeItem #272

Open yesgit opened 6 months ago

yesgit commented 6 months ago

20240426-164005

Description

There seems to be an issue with the removeItem function in our storage system, specifically with entries formatted as key_id. After invoking removeItem, some of these entries are not fully cleaned up and remain in the _m mapping object. This residual data could potentially cause unexpected behavior or errors in subsequent operations.

Steps to Reproduce

  1. Insert multiple items using keys formatted as key_id (e.g., loginInfo_shortToken).
  2. Remove these items using removeItem.
  3. Check the _m object for any residual entries.

Expected Behavior

All entries related to the specified key_id should be completely removed from _m after the execution of removeItem.

Actual Behavior

Some entries remain in _m even after their supposed deletion, leading to unnecessary bloat and potential inconsistencies.

Possible Impact

Suggested Actions

This issue needs attention to prevent possible data integrity problems and to maintain optimal performance of the storage system.

Thank you!