'QuotaExceededError: The quota has been exceeded' is not informative
Categories
(Core :: Storage: Quota Manager, defect)
Tracking
()
People
(Reporter: sparky, Unassigned)
Details
We are currently trying to add functionality to these youtube-playback tests that would let us run them for a longer period of time. While working on this, I continuously receive the following error: QuotaExceededError: The quota has been exceeded.
But what this Quota is related to is unclear. When I run this in Chrome, I see the following error, which is a bit more helpful:
msutil.js:92 Uncaught DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': The SourceBuffer is full, and cannot free space to append additional buffers.
at window.safeAppend (http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:92:8)
at loop (http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:589:12)
at http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:336:7
at http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:484:7
at window.FileSource.<anonymous> (http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:460:7)
at Request.onload (http://localhost/perf-youtube-playback/2019/lib/mse/msutil.js:274:10)
at XMLHttpRequest.<anonymous> (http://localhost/perf-youtube-playback/2019/harness/xhr.js:65:19)
To reproduce this issue, follow these instructions (there's probably a simpler way off getting this error to occur):
- Clone https://github.com/mozilla/perf-youtube-playback.
- Checkout this PR: https://github.com/mozilla/perf-youtube-playback/pull/4
- Setup locally, following these instructions: https://github.com/mozilla/perf-youtube-playback/wiki#running-tests-locally
- Once ready, navigate to: http://localhost/perf-youtube-playback/2019/main.html?test_type=playbackperf-test&muted=true&test_time=300
- Click the test
22. PlaybackPerf.VP9.2160p60@1X - Look for the QuotaExceededError in the console logging.
It would be great if the QuotaExceededError could be more informative about what the Quota refers to - in this case, that the SourceBuffer is full.
Also, I'm not sure if this is the correct component for this bug so feel free to change it if needed.
Updated•7 years ago
|
Comment 1•7 years ago
|
||
Jean-Yves or Paul do you have an idea if this could come from some A/V code?
Greg, what kind of errors do you see in the console?
Comment 2•7 years ago
|
||
Hm, maybe https://github.com/mozilla/perf-youtube-playback/pull/4#issuecomment-530984642 is the answer? Looks like the buffer need to rotate to not run into a quota exceeded condition? If that is the case this is more a bug in the test harness for youtube-performance tests.
Comment 3•7 years ago
|
||
QuotaExceededError error is what the spec requires us to fire when a sourcebuffer is full. It means the sourcebuffer is full
SourceBuffer size is 100MiB for video
and 20MiB if audio only.
I'm not sure what you would gain in explicitly adding that a sourcebuffer is full and that it comes from appendBuffer; only appendBuffer can emit this error and on a sourcebuffer.
Using the media devtools (available in extension) will give you complete information on what your sourcebuffer already contains and how much is left.
| Reporter | ||
Comment 4•7 years ago
|
||
Ok, sounds good. I want to mention that as a person who has never worked with a sourcebuffer before, the error message didn't help me and I wasn't able to make much progress on the issues I was facing until I ran the code in chrome.
Description
•