Bug 308601
| Summary: | [macOS release] imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating.html is a flaky text failure | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Diego De La Toba <d_delatoba> |
| Component: | New Bugs | Assignee: | Diego De La Toba <d_delatoba> |
| Status: | NEW | ||
| Severity: | Normal | CC: | eric.carlson, jer.noble, webkit-bot-watchers-bugzilla, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Diego De La Toba
imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating.html is a flaky text failure on macOS release.
HISTORY:
https://results.webkit.org/?suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fmedia-source%2FSourceBuffer-abort-updating.html
DIFF:
--- /Volumes/Data/worker/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating-expected.txt
+++ /Volumes/Data/worker/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating-actual.txt
@@ -1,4 +1,11 @@
-PASS SourceBuffer#abort() (video/webm; codecs="vorbis,vp8") : Check the algorithm when the updating attribute is true.
-PASS SourceBuffer#abort() (video/mp4) : Check the algorithm when the updating attribute is true.
+Harness Error (FAIL), message = InvalidStateError: The object is in an invalid state.
+TIMEOUT SourceBuffer#abort() (video/webm; codecs="vorbis,vp8") : Check the algorithm when the updating attribute is true. Test timed out
+TIMEOUT SourceBuffer#abort() (video/mp4) : Check the algorithm when the updating attribute is true. Test timed out
+
+Harness Error (FAIL), message = InvalidStateError: The object is in an invalid state.
+
+TIMEOUT SourceBuffer#abort() (video/webm; codecs="vorbis,vp8") : Check the algorithm when the updating attribute is true. Test timed out
+TIMEOUT SourceBuffer#abort() (video/mp4) : Check the algorithm when the updating attribute is true. Test timed out
+
DIFF URL:
https://build.webkit.org/results/Apple-Tahoe-Release-AppleSilicon-WK2-Tests/308141%40main%20(1951)/imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating-pretty-diff.html
REPRODUCTION:
I was able to reproduce this on macOS Tahoe 26.2 release ToT with the following:
run-webkit-tests --no-retry --force --expect-pass --iterations 1000 --exit-after-n-failures=5 imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-updating.html
I am going to mark expectations as pass fail while this pends investigation.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/171125061>
Diego De La Toba
Pull request: https://github.com/WebKit/WebKit/pull/59380
EWS
Test gardening commit 308163@main (8927e5299f14): <https://commits.webkit.org/308163@main>
Reviewed commits have been landed. Closing PR #59380 and removing active labels.
Diego De La Toba
I think what's causing the test to be flaky is the video element not being kept alive throughout the test since GC may clean this video element up before the tests operations complete causing a timeout.
A potential fix that resolves the issue locally, is to add document.body.appendChild(video) at line 83, which keeps the element alive until explicitly removed. This pattern is already used by other media source tests via mediasource-util.js at lines 344-367.
Putting this fix up as a PR.
Diego De La Toba
Pull request: https://github.com/WebKit/WebKit/pull/59386