It seems in iOS 13 and iPadOS 13 Beta (I am using latest Beta 3) IndexedDB storage is now capped at 500 MB.
They were previously uncapped.
Exact Error is:
QuotaExceededError: Unable to store record in object store because no enough pace for domain.
I confirmed this with "browser storage abuser" test here:
There is no way to ask user to approve more storage.
Users are stuck limited to just 1 or 2% of the storage they paid for on a premium device.
This may have been caused by:
This is seriously crippling and detrimental to all PWAs/Web Apps out there.
My App is used in mission critical flying and needs gigabytes of storage to store offline map tiles.
In general PWAs are now replacing Native applications so we need unlimited storage - not 500 MB total.
Please fix this ASAP. Either implement StorageManager API or at least allow Web Apps to use at least 5% of available storage as a sensible starting point.
> Either implement StorageManager API
Also see https://bugs.webkit.org/show_bug.cgi?id=185405.
I confirmed the issue on iOS.
https://demo.agektmr.com/storage/ works fine on the Mac, user is prompted for more space.
(In reply to youenn fablet from comment #3)
> I confirmed the issue on iOS.
> https://demo.agektmr.com/storage/ works fine on the Mac, user is prompted
> for more space.
This is a Safari behavior and no change is needed in WebKit, the issue will be tracked internally.
Note though that even though the user is granted quota increase, a given request might still fail due to QuotaError if the request is bigger than the quota increase validated by the user.
This is observable in https://demo.agektmr.com/storage/ when trying to write multiple 500MB blobs.
In general, I believe requests below 50MB should be fine.
I re-architected my App to stay within 500 MB limit (which indeed seems to be the hard limit). This means Safari on iOS users will not see all benefits of my App until a higher limit is allowed via Storage manager API. Something like this:
Since this is a policy mater for Safari and not an actual bug in Webkit I am marking this bug as WONTFIX.
Changing to Invalid instead of WontFix.