After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 575563 - The last gstreamer sometime deadlock when it wasn't a few month ago
The last gstreamer sometime deadlock when it wasn't a few month ago
Status: RESOLVED NOTABUG
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-03-16 15:04 UTC by Sebastien Merle
Modified: 2009-12-01 16:18 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Log of the deadlock (250.92 KB, text/x-log)
2009-03-16 15:06 UTC, Sebastien Merle
Details
A file that make the program deadlock after a few runs (967.75 KB, application/x-bzip)
2009-04-20 10:23 UTC, Sebastien Merle
Details

Description Sebastien Merle 2009-03-16 15:04:47 UTC
I wrote a peace of code with gst-python and I was testing it with a gstreamer checkout of some month ago.

I had some random warning saying "loop detected in the graph of bin pipeline"
that append when I was removing a fakesink from an iterating pipeling going
to STATE_PLAYING.

To check if it was fixed, I upgraded gstreamer and deps to the last git,
and now I don't have warning anymore, instead I have deadlocks...

I will attached a gstreamer log with GST_DEBUG=3,*bin*:5,*STATE*:5.
Comment 1 Sebastien Merle 2009-03-16 15:06:17 UTC
Created attachment 130751 [details]
Log of the deadlock
Comment 2 Wim Taymans 2009-03-16 18:28:42 UTC
can you make a backtrace of all threads by running the app, then wait for the deadlock, attach gdb -p <pid> and then thr apply all bt.
Comment 3 Tim-Philipp Müller 2009-04-08 12:30:09 UTC
Ping?

Comment 4 Sebastien Merle 2009-04-08 14:33:32 UTC
Sorry, I didn't sow the reply.

Here are the threads backtraces:


This is from the today last gstreamer checkout.

Could it be that some queue/multiqueue behavior changed ?

The version 0.10.21 (Ubuntu packages) works just fine.
Comment 5 Wim Taymans 2009-04-14 08:19:39 UTC
It looks like some queue is filled while the other one is empty. What kind of asf file is this? can you attach it?
Comment 6 Sebastien Merle 2009-04-20 10:22:52 UTC
This is not happening reliably with some particular file, since the gstreamer update, it randomly deadlock on various files using various codecs.

I'll join a file that always deadlock the program after a few runs.
Comment 7 Sebastien Merle 2009-04-20 10:23:43 UTC
Created attachment 132952 [details]
A file that make the program deadlock after a few runs
Comment 8 Wim Taymans 2009-08-21 10:16:42 UTC
It's not really a deadlock. One thread is waiting in a pad block. The main thread is simply waiting in the mainloop.
Comment 9 Wim Taymans 2009-12-01 16:18:12 UTC
You probably need to make the multiqueue code a bit more robust in your code.