Bug 199614

Summary: REGRESSION (iOS 13): IndexedDB quota is Only 500 MB - No Way to Ask User for More
Product: WebKit Reporter: Sanjay Kumar <hypertree>
Component: Service WorkersAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Blocker CC: achristensen, beidson, myh, sihui_liu, tomac, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: iPhone / iPad   
OS: Other   
See Also: https://bugs.webkit.org/show_bug.cgi?id=185405

Sanjay Kumar
Reported 2019-07-09 03:30:20 PDT
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: https://demo.agektmr.com/storage/ 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: https://bugs.webkit.org/show_bug.cgi?id=196545 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.
Attachments
Thomas Steiner
Comment 1 2019-07-09 17:02:42 PDT
> Either implement StorageManager API Also see https://bugs.webkit.org/show_bug.cgi?id=185405.
Radar WebKit Bug Importer
Comment 2 2019-07-10 09:24:59 PDT
youenn fablet
Comment 3 2019-07-10 09:32:25 PDT
I confirmed the issue on iOS. https://demo.agektmr.com/storage/ works fine on the Mac, user is prompted for more space.
youenn fablet
Comment 4 2019-07-12 11:26:52 PDT
(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.
Sanjay Kumar
Comment 5 2019-08-03 09:33:25 PDT
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: https://bugs.webkit.org/show_bug.cgi?id=185405 Since this is a policy mater for Safari and not an actual bug in Webkit I am marking this bug as WONTFIX.
youenn fablet
Comment 6 2019-08-03 11:31:09 PDT
Changing to Invalid instead of WontFix.
Sanjay Kumar
Comment 7 2023-05-09 07:28:16 PDT
Note You need to log in before you can comment on or make changes to this bug.