Exaile hangs on track change randomly

Bug #590344 reported by Grzegorz Lachowski
28
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Exaile
Fix Released
High
Unassigned

Bug Description

Before I killed it from another terminal, I couldn't do anything - X were frozen..
I use the latest bzr version.
log doesn't say anything special:

[gregorl@chii ~]$ exaile
INFO : Loading Exaile 0.3.1.99...
INFO : Loading settings...
INFO : Loading plugins...
INFO : Attempting to connect to AudioScrobbler (http://post.audioscrobbler.com/)
INFO : Loading collection...
INFO : Logged in successfully to AudioScrobbler (http://post.audioscrobbler.com/)
INFO : Connected to AudioScrobbler
INFO : Loading devices...
INFO : Loading interface...
INFO : Loading main window...
INFO : Connecting main window events...
INFO : Loading panels...
INFO : Connecting panel events...
INFO : Done loading main window...
INFO : Playing file:///home/gregorl/Muzyka/The%20Parasails%20-%20Skylife/The%20Parasails%20-%2002.%20Skylife%202.mp3
INFO : AudioScrobbler OK: i%5B0%5D=1275815328&b%5B0%5D=Skylife&o%5B0%5D=P&n%5B0%5D=2&a%5B0%5D=The+Parasails&s=06b8c571d720413297032891f1e3a666&m%5B0%5D=&t%5B0%5D=Skylife+2&r%5B0%5D=&l%5B0%5D=361
INFO : Playing file:///home/gregorl/Muzyka/absent_friend%20-%20No%20planets,%20No%20meteorites/absent%20friend%20-%2001%20-%20A%20Dying%20Sun.mp3
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Playing file:///home/gregorl/Muzyka/absent_friend%20-%20No%20planets,%20No%20meteorites/absent%20friend%20-%2002%20-%20Cassiopeia.mp3
INFO : Submitted "Now Playing" successfully to AudioScrobbler
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Submitted "Now Playing" successfully to AudioScrobbler
Unicestwiony
[gregorl@chii ~]$

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

I forgot to say, music was still playing after freeze.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

it appears that was fixed recently.. In 3386-1 it works ok and the track changing and stopping seems to be faster

Revision history for this message
Mathias Brodala (mathbr) wrote :

This is most likely related to the revert to asynchronous events.

Changed in exaile:
importance: Undecided → High
milestone: none → 0.3.2
status: New → Fix Committed
Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

It happens again randomly.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

It occurs even when main window is hidden, it seems that's not connected with visibility.

summary: - Exaile hangs on track change, when main window is visible
+ Exaile hangs on track change randomly
Revision history for this message
Mathias Brodala (mathbr) wrote :

Can you re-run with --debug and possibly --eventdebug? And what playback engine are you using?

Changed in exaile:
status: Fix Committed → Incomplete
Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

I am using normal playback engine. I have some problems with --eventdebug - it does not produce more information than the run without flags. I will collect the logs and post it, when the freeze problem appears again.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :
Download full text (3.8 KiB)

I don't know if this is connected with it, but exaile just crashed on a track change with following output:

[gregorl@chii ~]$ exaile --eventdebug
INFO : Loading Exaile 0.3.3.0-dev...
INFO : Loading settings...
INFO : Loading plugins...
INFO : Attempting to connect to AudioScrobbler (http://post.audioscrobbler.com/)
INFO : Loading collection...
INFO : Logged in successfully to AudioScrobbler (http://post.audioscrobbler.com/)
INFO : Connected to AudioScrobbler
INFO : Loading devices...
INFO : Loading interface...
INFO : Loading main window...
INFO : Enabling Restart menu item
INFO : Connecting main window events...
INFO : Loading panels...
INFO : Connecting panel events...
INFO : Done loading main window...
INFO : Playing file:///home/gregorl/Muzyka/Alva%20Noto%20-%20Xerrox%20Vol1%20%5B2007%5D/Alva%20Noto%20-%2006.%20Haliod%20Xerrox%20Copy%202%20Airfrance.mp3
/usr/lib/exaile/xlgui/__init__.py:72: PangoWarning: pango_layout_get_width: assertion `layout != NULL' failed
  gtk.main()
/usr/lib/exaile/xlgui/__init__.py:72: PangoWarning: pango_layout_get_line_count: assertion `layout != NULL' failed
  gtk.main()
/usr/lib/exaile/xlgui/__init__.py:72: GtkWarning: gdk_draw_layout: assertion `PANGO_IS_LAYOUT (layout)' failed
  gtk.main()
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Submitted "Now Playing" successfully to AudioScrobbler
INFO : Playing file:///home/gregorl/Muzyka/Alva%20Noto%20-%20Xerrox%20Vol1%20%5B2007%5D/Alva%20Noto%20-%2007.%20Haliod_Xerrox_Copy_6.mp3
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Submitted "Now Playing" successfully to AudioScrobbler
INFO : Playing file:///home/gregorl/Muzyka/Alva%20Noto%20-%20Xerrox%20Vol1%20%5B2007%5D/Alva%20Noto%20-%2008.%2010-06_Astoria.mp3
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Submitted "Now Playing" successfully to AudioScrobbler
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2001.%20Even%20White%20Horizons.mp3
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2002.%20Installation.mp3
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2003.%20Skidoos.mp3
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2004.%20Deck%20The%20House.mp3
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2005.%20Wet%20Floors.mp3
INFO : Playing file:///home/gregorl/Muzyka/Akufen%20-%20My%20Way%20%5B2002%5D/Akufen%20-%2006.%20Heaven%20Can%20Wait.mp3
INFO : Playing file:///home/gregorl/Muzyka/Alva%20Noto%20-%20Xerrox%20Vol1%20%5B2007%5D/Alva%20Noto%20-%2007.%20Haliod_Xerrox_Copy_6.mp3
INFO : Playing file:///home/gregorl/Muzyka/Alva%20Noto%20-%20Xerrox%20Vol1%20%5B2007%5D/Alva%20Noto%20-%2006.%20Haliod%20Xerrox%20Copy%202%20Airfrance.mp3
INFO : Attempting to submit "Now Playing" information to AudioScrobbler...
INFO : Submitted "Now Playing" successfully to AudioScrobbler
INFO : Playing file:///home/gregorl/Muz...

Read more...

Revision history for this message
Mathias Brodala (mathbr) wrote :

Yes, --eventdebug ATM does not work without --debug, thus specify both to get the full output. And please also try with the Unified engine.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

In attachment there are 3 log files with Exaile hanged on track change - main window was white and unresponsive.
It happens with the normal engine, I coudn't reproduct it using the unified one, but I noticed strange track skipping using unified engine and attached a log when it happened, but I believe it should go somewhere else.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

I noticed, that it sent same event twice (track_tags_changed with same songname) and then hanged

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

In this attachment is a log when Exaile froze my X and I had to kill from another terminal.

Revision history for this message
Emiel Molenaar (emiel-molenaar) wrote :

I can confirm this one. Running latest bzr version too on Ubuntu 10.04 x86. For me, this occurs when Exaile has been playing for a while (say like a half an hour or something). I can move the mouse, but the whole screen is frozen and Exaile keeps on playing.

Revision history for this message
Anthony Simpson (raynes) wrote :

I can confirm this as well. Using 3.2.0 on Ubuntu 10.04, it happens randomly, and almost every time in a custom playlist. In the "Playlist 1" playlist that opens, it doesn't do it no matter how hard I try to break it. It's only in the other playlists that this seems to happen.

Revision history for this message
Anthony Simpson (raynes) wrote :

Actually, I just realized others were having issues where it freezes X. All that happens here is that exaile itself freezes. It continues to play, however.

Revision history for this message
Anthony Simpson (raynes) wrote :

I was just toying around a moment ago, and I noticed something. It only freezes when you play a song that has spaces in it's path. Lookie here:

INFO : Playing file:///home/rayne/Music/3OH!3/gtkpod845474.mp3
INFO : Playing file:///home/rayne/Music/3OH!3/Chokechain.mp3
INFO : Playing file:///home/rayne/Music/3OH!3/Don't%20Trust%20Me.mp3
INFO : Playing file:///home/rayne/Music/3OH!3/gtkpod545282.mp3
INFO : Playing file:///home/rayne/Music/3OH!3/gtkpod845474.mp3
INFO : Playing file:///home/rayne/Music/3OH!3/gtkpod693260.mp3
INFO : Playing file:///home/rayne/Music/AC-DC/Black%20Ice/7%20-%20Spoilin'%20for%20a%20Fight.mp3
Killed

It was only when I played that last song did it freeze. I've done this several times with different song combinations, and it works the same every time.

Revision history for this message
Anthony Simpson (raynes) wrote :

Actually, never mind. I made a booboo. I jumped to conclusions too quickly, and didn't noticed the spaces in some of my test songs. It actually only seems to freeze on that particular album. Songs from Black Ice. I'm thinking my problem isn't related to this one at all. :\

Revision history for this message
Emiel Molenaar (emiel-molenaar) wrote :

Confirmed again, running Exaile rev 3643 from Bazaar, hanging the X server after changing tracks. Sorry, no logs.

Revision history for this message
Steve Dodier-Lazaro (sidi) wrote : Re: [Bug 590344] Re: Exaile hangs on track change randomly

Apart from a bzr "bisect" and long hours of testing, I don't see how to find
the origin of this bug. I can start bisecting the last 200 revisions now if
wanted.

Revision history for this message
Johannes Sasongko (sjohannes) wrote :

The cause is almost certainly a changeset removing the guarantee that Exaile event callbacks are run in the GDK main thread (search for "sync" in commit logs). Apparently this was required for a new feature to work (can't remember what).

The solution, as far as I know, is as dull as tracking down every event callback and making sure that no GTK+ function is ever called from another thread. I wish GTK+ could help debugging this, but I don't think it can.

Revision history for this message
Emiel Molenaar (emiel-molenaar) wrote :

Mathias Brodala has commited some code into bazaar which maybe fixes this bug:

http://bazaar.launchpad.net/~exaile-devel/exaile/exaile-0.3.x/revision/3671
http://bazaar.launchpad.net/~exaile-devel/exaile/exaile-0.3.x/revision/3672

I'm running revision 3673 now, and will report my findings here.

Revision history for this message
Grzegorz Lachowski (gregory-lachowski) wrote :

I keep using latest bzr revision and freeze did not occur from time I have updated Exaile. Before it happened at least once a day and now it seems to be fine.

Revision history for this message
Emiel Molenaar (emiel-molenaar) wrote :

I've been using Exaile quite frequently since rev 3671 and 3672, and this bug seems to be fixed according to me too.

Revision history for this message
reacocard (reacocard) wrote :

tentatively marking as fixed

Changed in exaile:
milestone: 0.3.2.0 → 0.3.3
status: Incomplete → Fix Committed
Changed in exaile:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.