(In reply to Madalin Cotetiu from comment #15)
Can you please provide some steps to manually verify this issue? If no manual testing is needed please mark this bug as "qe-verify-"
Manually triggering this error on PrivacyBadger may be a bit tricky, as it seems that PrivacyBadger gradually store more data while the user navigates on more websites and it detects more trackers, and I couldn't find a simple way to make it immediately store as much data as needed to exceed the quota enforced by the QuotaManagerService.
Locally I've been able to trigger manually these kind of errors (
UnknownError) by forcing a disk quota at a file system level, using a test extension that writes (a considerable amount of) data into storage.local and filling the available disk space by creating more files into the same partition.
Another approach (that doesn't need a disk quota to be set at the file system level) could be to run Firefox on a profile stored in a small disk partition (e.g. using a small usb key could likely work as well).
QuotaManagerExceeded is a bit simpler to trigger, because it is triggered consistently if the extension exceeded its quota (based on the free disk space currently still available).
From what I saw
UnknownError are a bit trickier to trigger consistently, but I have been able to trigger them manually by completely filling the disk space available on the partition where the test Firefox profile is and then trying to call
browser.storage.local.set to store more data.
Obviosly, filling the entire disk space available to the test Firefox profile may also trigger many other unrelated failures (e.g. Firefox will not be able to update many of the other state and data files that are part of the Firefox profile), and so some of the operations (e.g. installing the extension to test) has to be done before there is no disk space anymore.
Let's give a try to the following STR:
- Run Firefox from a profile stored in a disk with a short amount of disk space (I used a disk limited to 100Mb and then gradually filled the disk space. I used some shell commands but it could also be done by manually copying other files into that disk partition using the OS file manager)
- install the attached test extension
- open the addon debugging window for the test extension from about:debugging and select the console panel
- press the test extension browserAction button (which will store some data in storage.local)
QuotaManagerExceeded (with some disk space still available in the disk partition where the test Firefox profile is stored):
- the error message "QuotaManagerExceeded: storage.local API call exceeded its quota limitations." should have been logged from the test extension "background.js" script
UnknownError (with no disk space available in the disk partition where the test Firefox profile is stored):
- the error message "An unexpected error occurred" should have been logged from the test extension "background.js" script
- the original error (
UnknownError) should have been also logged from
On PrivacyBadger, I've been able to trigger this last STR at least once, by filling the entire disk space (after installing PrivacyBadger) and then opening a number of website until PrivacyBadger shows a red badge (and an exclamation mark: "!") on its browserAction icon, at that point the "An unexpected error occurred" error message has been shown in the PrivacyBadger browserAction popup.