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 579370 - Infinite loop trying to update file name
Infinite loop trying to update file name
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: Importing
git master
Other Linux
: Urgent blocker
: 1.5.0
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-04-18 04:00 UTC by John Millikin
Modified: 2009-05-22 18:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fixed an infinite loop when trying to update the track metadata (2.92 KB, patch)
2009-04-24 02:06 UTC, Alexander Kojevnikov
committed Details | Review

Description John Millikin 2009-04-18 04:00:32 UTC
[Debug 20:34:07.791] Updating file name for SWING HOLIC - #800080 (on VOL.02) <00:05:39.9050000> [file:///home/john/Music/SWING HOLIC/2008. VOL.02/8. #800080.ogg]
[Error 20:34:07.791] Error writing to or renaming SWING HOLIC - #800080 (on VOL.02) <00:05:39.9050000> [file:///home/john/Music/SWING HOLIC/2008. VOL.02/8. #800080.ogg]
[Debug 20:34:07.819] Saving metadata for SWING HOLIC - #800080 (on VOL.02) <00:05:39.9050000> [file:///home/john/Music/SWING HOLIC/2008. VOL.02/8. #800080.ogg]
[Warn  20:34:07.819] Caught an exception - URI could not be converted to local file location (in `Banshee.Core')
  at Banshee.Base.SafeUri.UriToFilename (System.String uri) [0x00048] in /home/john/Code/3rd-party/banshee/trunk/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:105 
  at Banshee.Base.SafeUri.get_AbsolutePath () [0x00016] in /home/john/Code/3rd-party/banshee/trunk/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:154 
  at Banshee.Base.SafeUri.get_LocalPath () [0x00000] in /home/john/Code/3rd-party/banshee/trunk/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:162 
  at Banshee.Streaming.StreamTagger.ProcessUri (Banshee.Base.SafeUri uri) [0x00000] in /home/john/Code/3rd-party/banshee/trunk/src/Core/Banshee.Core/Banshee.Streaming/StreamTagger.cs:48 

This message is repeated endlessly. The UI is responsive, but CPU use is pegged at 100%.
Comment 1 Aaron Bockover 2009-04-23 22:59:59 UTC
I've run into this - blocker for 1.5.0 release.
Comment 2 Alexander Kojevnikov 2009-04-24 02:04:54 UTC
I simple way to reproduce this is to rename a file then go to Banshee and edit the corresponding track's meta-data. I will add a patch that fixes it for me, please check if it works for you as well.
Comment 3 Alexander Kojevnikov 2009-04-24 02:06:11 UTC
Created attachment 133234 [details] [review]
Fixed an infinite loop when trying to update the track metadata
Comment 4 Gabriel Burt 2009-04-24 22:11:48 UTC
Looks good, thanks Alexander.

There is a second issue here ("URI could not be converted to local.."), so let's keep this open until that's fixed/investigated.
Comment 5 Alexander Kojevnikov 2009-04-25 01:09:35 UTC
Committed
Comment 6 John Millikin 2009-04-25 22:33:04 UTC
I had a bit of git confusion, and pushed my bugfix for the "could not be converted" problem to remote instead of local master. For the record, this is the patch:

http://git.gnome.org/cgit/banshee/commit/?id=00e46bc7f426a03118db34b81d0840730580a818

Previously, tracks were stored with relative filenames like:

2008. VOL.02/8. #800080.ogg

Part of the jobs patch apparently tried to convert these to absolute URIs, but instead of actually converting, just concatenated the filename onto the library URI. That yielded broken URIs such as those in the OP.

The migration has been updated to properly convert filenames to URIs.

Aaron, before I close as finished, could you confirm the patch works for you as well?
Comment 7 Aaron Bockover 2009-05-22 17:38:28 UTC
This appears to work for me. Feel free to close. Thanks John!