Bug 224112 - [GTK] media/video-as-img-output-pts.html test is flaky timeout
Summary: [GTK] media/video-as-img-output-pts.html test is flaky timeout
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Diego Pino
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-04-02 08:59 PDT by Carlos Alberto Lopez Perez
Modified: 2022-01-04 17:03 PST (History)
9 users (show)

See Also:


Attachments
full release crash log with threads (82.71 KB, text/plain)
2021-04-02 08:59 PDT, Carlos Alberto Lopez Perez
no flags Details
Patch (3.37 KB, patch)
2022-01-04 00:45 PST, Diego Pino
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Alberto Lopez Perez 2021-04-02 08:59:30 PDT
Created attachment 425026 [details]
full release crash log with threads

Test media/video-as-img-output-pts.html is flaky and sometimes timeouts or crashes.

On the GTK bots it is crashing on the release one, but not on the debug one.

When it crashes it gives this backtrace:

Thread 1 (Thread 0x7f447c9ff700 (LWP 49081)):
#0  g_logv (log_domain=0x7f45ee1c6240 <g_log_domain_gstreamer> "GStreamer", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413
#1  0x00007f45eef1b973 in g_log (log_domain=<optimized out>, log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7f45eef73ad0 "%s: assertion '%s' failed") at ../glib/gmessages.c:1451
#2  0x00007f45eef1c19d in g_return_if_fail_warning (log_domain=<optimized out>, pretty_function=pretty_function@entry=0x7f45ee1e26c0 <__func__.9> "gst_stream_get_stream_id", expression=expression@entry=0x7f45ee1d5533 "GST_IS_STREAM (stream)") at ../glib/gmessages.c:2883
#3  0x00007f45ee18a822 in gst_stream_get_stream_id (stream=0x0) at ../gst/gststreams.c:265
#4  gst_stream_get_stream_id (stream=0x0) at ../gst/gststreams.c:263
#5  0x00007f45a92840c0 in get_output_for_slot (slot=slot@entry=0x7f4574031960) at ../gst/playback/gstdecodebin3.c:1534
#6  0x00007f45a9288880 in idle_reconfigure (pad=0x7f4424082130 [GstMultiQueuePad], info=<optimized out>, slot=0x7f4574031960) at ../gst/playback/gstdecodebin3.c:2324
#7  0x00007f45ee163297 in gst_pad_add_probe (pad=0x7f4424082130 [GstMultiQueuePad], mask=<optimized out>, mask@entry=GST_PAD_PROBE_TYPE_IDLE, callback=callback@entry=0x7f45a92887c0 <idle_reconfigure>, user_data=0x7f4574031960, destroy_data=destroy_data@entry=0x0) at ../gst/gstpad.c:1501
#8  0x00007f45a928a488 in handle_stream_switch (dbin=0x555edc801d60 [GstDecodebin3], select_streams=<optimized out>, seqnum=<optimized out>) at ../gst/playback/gstdecodebin3.c:2661
#9  0x00007f45a928a91c in gst_decodebin3_send_event (element=0x555edc801d60 [GstDecodebin3], event=0x7f440002e0b0 [GstEvent]) at ../gst/playback/gstdecodebin3.c:2784
#10 0x00007f45ee1434da in gst_element_send_event (element=0x555edc801d60 [GstDecodebin3], event=0x7f440002e0b0 [GstEvent]) at ../gst/gstelement.c:1947
#11 0x00007f45f6c75784 in WebCore::ImageDecoderGStreamer::InnerDecoder::handleMessage(_GstMessage*) () at /app/webkit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37
#12 0x00007f45f263849b in WTF::RunLoop::performWork() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#13 0x00007f45f26acf09 in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#14 0x00007f45f26ad9ef in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#15 0x00007f45eef13dbf in g_main_dispatch (context=0x7f458c00ff40) at ../glib/gmain.c:3337
#16 g_main_context_dispatch (context=0x7f458c00ff40) at ../glib/gmain.c:4055
#17 0x00007f45eef14168 in g_main_context_iterate (context=0x7f458c00ff40, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#18 0x00007f45eef14483 in g_main_loop_run (loop=0x7f458c0b5990) at ../glib/gmain.c:4329
#19 0x00007f45f26adb38 in WTF::RunLoop::run() () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#20 0x00007f45f263a3ca in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#21 0x00007f45f26b01f9 in WTF::wtfThreadEntryPoint(void*) () at /app/webkit/WebKitBuild/Release/lib/libjavascriptcoregtk-4.0.so.18
#22 0x00007f45eeea24d2 in start_thread (arg=<optimized out>) at pthread_create.c:477
#23 0x00007f45ee990323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

And outputs this on stderr:


(WebKitWebProcess:48694): GStreamer-CRITICAL **: 05:04:55.302: gst_stream_get_stream_id: assertion 'GST_IS_STREAM (stream)' failed




Passing something like "--repeat-each=500" to run-webkit-tests may help to reproduce the issue
Comment 1 Philippe Normand 2021-04-02 09:01:12 PDT
https://bugs.webkit.org/show_bug.cgi?id=223636#c2
Comment 2 Carlos Alberto Lopez Perez 2021-04-02 10:17:06 PDT
(In reply to Philippe Normand from comment #1)
> https://bugs.webkit.org/show_bug.cgi?id=223636#c2

Right!

*** This bug has been marked as a duplicate of bug 223636 ***
Comment 3 Diego Pino 2021-04-29 00:16:50 PDT
r275516 solved the flaky crashes in this test, but the test is still a flaky timeout:

https://results.webkit.org/?suite=layout-tests&test=media%2Fvideo-as-img-output-pts.html&platform=GTK&platform=WPE&platform=linux

It times out more in WPE than in WebKitGTK.
Comment 4 Diego Pino 2022-01-04 00:45:59 PST
Created attachment 448271 [details]
Patch
Comment 5 Diego Pino 2022-01-04 00:48:54 PST
It's possible to reproduce the flaky timeout error running the test like this:

```
Tools/Scripts/run-webkit-tests --gtk --iterations=80 media/video-as-img-output-pts.html
```
Comment 6 EWS 2022-01-04 17:03:17 PST
Committed r287598 (245726@main): <https://commits.webkit.org/245726@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 448271 [details].