WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
196198
[GTK] Unexpected timeout in http/tests/media/video-play-stall-seek.html
https://bugs.webkit.org/show_bug.cgi?id=196198
Summary
[GTK] Unexpected timeout in http/tests/media/video-play-stall-seek.html
Diego Pino
Reported
2019-03-25 03:29:18 PDT
The test started to time out since
r243058
([GStreamer] Rewrite HTTP source element using pushsrc base class
https://bugs.webkit.org/show_bug.cgi?id=195631
)
Attachments
Patch
(9.11 KB, patch)
2021-06-08 10:56 PDT
,
Enrique Ocaña
no flags
Details
Formatted Diff
Diff
Patch
(14.36 KB, patch)
2021-06-10 05:16 PDT
,
Enrique Ocaña
no flags
Details
Formatted Diff
Diff
Patch
(14.37 KB, patch)
2021-06-15 09:11 PDT
,
Enrique Ocaña
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Philippe Normand
Comment 1
2019-03-26 05:03:57 PDT
I suspect it's just slow now, not timing out. So probably a better expectation would be "Slow".
Diego Pino
Comment 2
2020-04-11 01:07:43 PDT
I run the test individually several times and every time it took more than 75 seconds. So it seems the test is actually timing out.
Diego Pino
Comment 3
2020-04-11 01:10:55 PDT
Sometimes the test passes, but most of the times out or fails.
Diego Pino
Comment 4
2020-04-11 01:13:07 PDT
I'm going to change the test to Slow anyway to see if that helps to get more passes. Sorry for the noise.
Lauro Moura
Comment 5
2020-04-12 11:48:24 PDT
Link to results archive:
https://results.webkit.org/?platform=GTK&platform=WPE&suite=layout-tests&test=http%2Ftests%2Fmedia%2Fvideo-play-stall-seek.html
Still timing out most times. When it passes, the run time is <= 3s, so this does not look like a Slow test. Also, it is only passing in X11 Release. Always Timeout or Fail in Debug or Wayland. I will update the test expectations.
Enrique Ocaña
Comment 6
2021-05-27 11:08:36 PDT
I've ran this test in X11 Release and the test doesn't timeout (Lauro already mentioned this), but fails. The test is making a request of a media file to the load-and-stall.cgi, which serves part of the file and then stalls on purpose. At some point a seek back to 0 is done and the test expects the readyState >= HAVE_CURRENT_DATA (meaning "part of the video is loaded, including position 0", which is true) and networkState == NETWORK_LOADING (the loading still hasn't finished, this isn't always true, as sometimes it's NETWORK_IDLE). Debugged why the last condition isn't met and found that CachedResourceStreamingClient::loadFinished() is called (the download is declared to be finished forever because 0 bytes have been read). I went down through the layers down to the IPC that listens the NetworkProcess messages, continued in the NetworkProcess and found that g_input_stream_read_async() was returning 0 bytes because libsoup just behaves that way (or that's whay I could understand with my limited knowledge of libsoup). If no bytes are available immediately, then 0 bytes are returned and the upper layers just assume EOS. With this in mind, I think the test should be changed and just avoid the networkState check. I don't think anybody would care much, since the test is skipped on win, glib, gtk-wayland and mac (nobody uses it?).
Philippe Normand
Comment 7
2021-05-28 04:13:38 PDT
It still times out on the bots, sometimes fails, but mostly just times out. If you overload your build machine with, say, a debug build running in another terminal, is the test now timing out?
Enrique Ocaña
Comment 8
2021-05-28 04:40:32 PDT
All my previous comments were about the test failing because of the networkState condition being false, without timeout. Now I've also been able to reproduced sometimes an initial timeout caused by the "waiting" event not being even emitted (a second time, what the test expects) when the video starts. I'm debugging that now.
Enrique Ocaña
Comment 9
2021-06-08 10:56:02 PDT
Created
attachment 430863
[details]
Patch
Enrique Ocaña
Comment 10
2021-06-10 05:16:51 PDT
Created
attachment 431064
[details]
Patch
Enrique Ocaña
Comment 11
2021-06-10 05:44:30 PDT
Comment on
attachment 431064
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=431064&action=review
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:457 > + GST_DEBUG_OBJECT(pipeline(), "Setting high-percent=0 on GstDownloadBuffer to force 100% buffered reporting");
I forgot to use %% here to escape the percent sign.
Philippe Normand
Comment 12
2021-06-14 08:46:46 PDT
Comment on
attachment 431064
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=431064&action=review
> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:491 > + bool m_isWebKitWebSrcHasEos { false };
Two verbs in this variable name ? Maybe one is enough :) What about m_hasWebKitWebSrcSentEOS ?
Enrique Ocaña
Comment 13
2021-06-15 09:07:40 PDT
Comment on
attachment 431064
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=431064&action=review
>> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:491 >> + bool m_isWebKitWebSrcHasEos { false }; > > Two verbs in this variable name ? Maybe one is enough :) What about m_hasWebKitWebSrcSentEOS ?
Sounds good, I'm changing it.
Enrique Ocaña
Comment 14
2021-06-15 09:11:05 PDT
Created
attachment 431446
[details]
Patch
EWS
Comment 15
2021-06-17 08:58:07 PDT
Committed
r278988
(
238914@main
): <
https://commits.webkit.org/238914@main
> All reviewed patches have been landed. Closing bug and clearing flags on
attachment 431446
[details]
.
Radar WebKit Bug Importer
Comment 16
2021-06-17 08:59:30 PDT
<
rdar://problem/79453713
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug