PoC-04 — pojemność i trwałość IndexedDB

Ile danych zmieści kolejka, czy przeżyją zamknięcie przeglądarki i restart telefonu, oraz czy persist() jest przyznawany.

Dlaczego to ma znaczenie. Kolejka zdjęć to nawet 2 GB blobów (założenie z budgets.md). Jeśli iPhone pozwoli zapisać 200 MB, strategia zwalniania miejsca musi być znacznie agresywniejsza. storage.estimate() jest w Safari dopiero od 17, więc na starszych iOS obsługa braku miejsca musi być reaktywna — łapiemy QuotaExceededError.

To urządzenie

wykrywanie…

Test 1 — pojemność

Zapisujemy bloby po 5 MB aż do błędu. Kluczowa obserwacja: czy QuotaExceededError przychodzi czysto, czy przeglądarka usuwa wcześniejsze dane albo wysypuje kartę. Od tego zależy, czy reaktywna obsługa braku miejsca ma szansę zadziałać.

Test 2 — trwałość

Zapisz znacznik, potem: zamknij kartę · ubij przeglądarkę (przesuń w przełączniku aplikacji) · zrestartuj telefon · wróć po 2 h, po 24 h i po 8 dniach. Za każdym razem sprawdź.

Test 3 — wydajność zapisu i odczytu

Sprzątanie

Wyniki

Log