Baseflow / Baseflow/flutter_cache_manager

CacheManager: does not wait for data to be persisted. Potential consistency issue

Open
#492 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Dart
Stars
809
Forks
510
Avg merge
6m
Merged PRs (30d)
1

Description

## 🐛 Bug Report

due to data consistency issues with JsonCacheInfoRepository, reported in https://github.com/Baseflow/flutter_cache_manager/issues/491, i started checking if i could use 'CacheObjectProvider', it looks fine, but the same issue can occur because cachemanager doesn't wait for data to be persisted because it is missing an "await" on line 232. is this intentional? why?

Image

### Expected behavior

### Reproduction steps

### Configuration

**Version:** 1.x

**Platform:**
- [x] :iphone: iOS
- [x] :robot: Android

Contributor guide

Open the contributing guide

Research direction

Inspect CacheManager around line 232 and trace how it persists data through JsonCacheInfoRepository or CacheObjectProvider. First run the existing package tests and look for coverage of persistence ordering; done means the manager does not return before the relevant data is persisted and consistency behavior is covered by a regression test.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart, flutter
Domain
databases, mobile-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.