Crashes while loading large library; 12.10 upgrade; ntfs drive

Bug #1103757 reported by Si Dedman
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
rhythmbox (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

HI all.
I've been using rhythmbox for a few years and it's mostly been good to me.

Backstory to this problem:
Had problems with Ubuntu 11.10 (i think) & upgraded to 12.10 which fixed them, however it screwed up my dualboot setup (rant about how ubuntu upgrades don't maintain grub config omitted). I had:
sda: ntfs drive, win XP bootable
sdb: ex4 ubuntu bootable, & my OS 99.9% of the time.
BUT: my music (~38000 songs) is on the ntfs drive, which used to (be available at grub and) auto-mount. Rhythmdb.xml therefore has a catalogue of all the files in the folders, with playcount and ratings info* which I don't want to lose.
I've set the drive to automount with fstab (still not available in grub) and the files are where they should be.

The problem itself:
Rhythmbox fires up with the total number of tracks as expected and the list of artists albums and genres looking normal in the music library panes, then it does the library check/scan for a while (within normal time range for this number of files) then crashes.

Debug info thusfar ascertained:
rhythmbox -d showed me that it was crashing because a certain file hadn't been seen in too long (as per identical bug here: https://mail.gnome.org/archives/rhythmbox-devel/2012-November/msg00012.html). I verified the track was present and uncorrupted and emailed the guy in the previously mentioned bug to problem solve with him. He solved it by deleting all the <ignore> entries in rhythmdb. I backed up rhythmdb and tried this - no improvement.

rhythmbox -d now shows (last relevant-seeming block - I don't know how to get it to output the whole megalong text dump):
=============================================================================
(22:38:35) [0x28220c0] [rhythmdb_process_stat_event] rhythmdb.c:2101: error accessing file:///media/SamsungA/Music/EAC/bender%20-%20quite%20a%20shock.wav: Couldn't access file:///media/SamsungA/Music/EAC/bender - quite a shock.wav: Error when getting information for file '/media/SamsungA/Music/EAC/bender - quite a shock.wav': No such file or directory
(22:38:35) [0x28220c0] [song_update_availability] rhythmdb-song-entry-types.c:170: deleting entry file:///media/SamsungA/Music/EAC/bender%20-%20quite%20a%20shock.wav; not seen for too long
(22:38:35) [0x28220c0] [rhythmdb_entry_delete] rhythmdb.c:3711: deleting entry 0x7f4e4e324680
(22:38:35) [0x2559200] [rb_metadata_load] rb-metadata-gst.c:204: found a jpeg image stream, not actual video
(22:38:35) [0x2559200] [rb_metadata_load] rb-metadata-gst.c:212: found video/image/other stream, media type image/jpeg
(22:38:35) [0x2559200] [rb_metadata_load] rb-metadata-gst.c:216: video caps: image/jpeg, width=(int)104, height=(int)104, sof-marker=(int)0
(22:38:35) [0x2559200] [rb_gst_get_missing_plugin_type] rb-gst-media-types.c:65: no missing plugin details
(22:38:35) [0x2559200] [rb_metadata_dbus_load] rb-metadata-dbus-service.c:77: metadata load finished (type image/jpeg)
(22:38:35) [0x2559200] [rb_gst_get_missing_plugin_type] rb-gst-media-types.c:65: no missing plugin details
(22:38:35) [0x2559200] [rb_metadata_get] rb-metadata-gst.c:856: no duration available
(22:39:07) [0x2559200] [connection_closed_cb] rb-metadata-dbus-service.c:218: client connection closed
Segmentation fault (core dumped)
simon@poseidon:~$
=============================================================================
Thought: could it be that rhythmbox doesn't have sufficient read/write privileges to the ntfs drive? Tho surely it'd be wrying to edit the database which is in the ubuntu drive...?

I thought it might be the large collection problem (https://code.launchpad.net/~matttbe/ubuntu/raring/rhythmbox/lp1010619_RB_2.98/+merge/133209) however note the last comments - the bugfix has already been implemented into the builds and I have the latest version which therefore has this fixed.

I have the crash report but it looks like I can only attach one file.
Glad to do whatever's required to provide more info.
Thanks in advance all!

Si

*though unrelated at first glance, this kind of thing makes implementing THIS https://bugzilla.gnome.org/show_bug.cgi?id=538549 even more worthwhile, as users can torch their corrupt database and start fresh.

Revision history for this message
Si Dedman (si-dedman) wrote :
Revision history for this message
Si Dedman (si-dedman) wrote :

Looks like i can workaround the 1 attachment rule by putting the crash file in a second post. Which is this.

Revision history for this message
Si Dedman (si-dedman) wrote :

Having renamed rhythmdb.xls to rhythmdb_backup.xls, so rhythmbox would rebuild the library from the watchlist, it still crashed.
I got the "ubuntu has experienced an internal error" box twice. I've just tried opening the "_usr_lib_rhythmbox_rhythmbox-metadata.1000.crash" file, but get the ubuntu internal error box when I do that too.

Info from that crash box:
Title = rhythmbox metadata crashed with SIGSEGV in g_type_check_value()

SegvAnalysis= segfault happened at 0x7fa6304b12f9 <g_type_check_value+105.: mov (%rax),%rax
PC (0x7fa6304b12f9) ok
source "(%rax)" (0x10000000000000000000) not located in a known VMA region (needed readable region)!
destination "%rax" ok

Segvreason = reading unknown VMA

Any thoughts very much appreciated.

Revision history for this message
Si Dedman (si-dedman) wrote :

Ran rhythmbox -d, resulted in an error box: rhythmbox-metadata has stopped unexpectedly. The library was still churning away in the background, then it caused the PC to hang and I had to reboot.
The most recent crash file is usr_bin_Xorg.0.crash, 15.2mb. 10 minutes before that was _usr_lib_rhythmbox_rhythmbox-metadata.1000.crash, 28.1mb
Going to try to move all my customised elements (playlists, database) and see if I can get it to load clean.

Revision history for this message
Si Dedman (si-dedman) wrote :

Moved the .local/source/rhythmbox/ folder to a safe place, uninstalled, rebooted, reinstalled, opened, and it popped up with the same semi-full library and all existing playlists. I guess it's nice that my data are safe (!) but surprising that they must be stored someone as well as the above named folder.

Any ideas on any of this? Now including how I backup my settings properly and uninstall/reinstall clean? Or if that's even worth it?
Thanks

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in rhythmbox (Ubuntu):
status: New → Confirmed
Revision history for this message
bartensud (thomas-bartensud) wrote :

Hi,
I'm using Rhythmbox 2.97 under Ubuntu 12.10 (64 bit) with a song library of about 17000 entries (NTFS formatted).
I'm facing the same(?) problem: Rhythmbox crashes on startup.
It happened several times in the last months.
The library has about 17000 entries (on NTFS disk).

HOW TO REPRODUCE
For my observation it seems to come to a crash (segmentation fault) when
a) file is not existing any more (in my case the folder was renamed) AND
b) some Rhythmbox internal timeout ("not seen for too long") is reached which triggers the removal of this entry from the library (see below)

Due to this internal timeout (days, weeks, months???) it's hard to reproduce for me and I'm not sure if it happens for each renamed folder.
Also not sure if whitespace encoding (%20) is playing a role here.

WORKAROUND
My workaround is to remove the whole <entry> tag for listed file causing the crash (see below) from ~/.local/share/rhythmbox/rhythmdb.xml. Then Rhythmbox works normal again.
But I would prefer if Rhythmbox can handle this issue itself;)
Thanks anyway for Rhythmbox!

================
(14:08:50) [0x17b12d0] [rhythmdb_process_stat_event] rhythmdb.c:2101: error accessing file:///media/foo/bar/mp3/Alben/The%20Beta%20Band%20-%20The%203%20EPs/Beta%20Band%20-%203EPs%20-%2003%20-%20B%20+%20A.mp3: Couldn't access file:///media/foo/bar/mp3/Alben/The Beta Band - The 3 EPs/Beta Band - 3EPs - 03 - B + A.mp3: Error when getting information for file '/media/foo/bar/mp3/Alben/The Beta Band - The 3 EPs/Beta Band - 3EPs - 03 - B + A.mp3': No such file or directory
(14:08:50) [0x17b12d0] [song_update_availability] rhythmdb-song-entry-types.c:170: deleting entry file:///media/foo/bar/mp3/Alben/The%20Beta%20Band%20-%20The%203%20EPs/Beta%20Band%20-%203EPs%20-%2003%20-%20B%20+%20A.mp3; not seen for too long
(14:08:50) [0x17b12d0] [rhythmdb_entry_delete] rhythmdb.c:3711: deleting entry 0x7f01b4d17050
**
RhythmDB:ERROR...
================

Changed in rhythmbox (Ubuntu):
status: Confirmed → Invalid
status: Invalid → Confirmed
Revision history for this message
Si Dedman (si-dedman) wrote :

Hi again. Changed to xubuntu 12.10, still on rhythmbox 2.97, reloaded library and it's working fine, manually added my 2 podcast subscriptions, moved my old playlists file over & it works fine, so everything's back up & working BUT: ratings & playcounts are still trapped on my old rhythmdb.xls.

Any thoughts on how I can sort this out? I don't understand why the old file isn't working - the files are in the same place. Notes on database format differences below, essentially:
file size & 1st & last seen are different, and
play count, last played, rating, hidden & comment are absent in the new dbase.

If anyone can think of a way to merge my old ratings & play counts into the new dbase, that would be much appreciated. I don't have much experience playing with xml...

Thanks

  <entry type="song">
    <title>Shiverman</title>
    <genre>Reggae</genre>
    <artist>Fat Freddy's Drop</artist>
    <album>Dr. Boondigga &amp; the Big BW</album>
    <track-number>2</track-number>
    <disc-number>1</disc-number>
    <duration>636</duration>
    <file-size>25529884</file-size> [larger by 9500]
    <location>file:///media/loadsoffolders/Shiverman.mp3</location>
    <mountpoint>file:///media/SamsungA</mountpoint>
    <mtime>1307552915</mtime>
    <first-seen>1322744102</first-seen> [different]
    <last-seen>1357328902</last-seen> [different]
    <rating>5</rating> [absent]
    <play-count>3</play-count> [absent]
    <last-played>1334333919</last-played> [absent]
    <bitrate>320</bitrate>
    <date>733408</date>
    <media-type>audio/mpeg</media-type>
    <hidden>1</hidden> [absent]
    <comment>0</comment> [absent]
    <album-artist>Fat Freddy's Drop</album-artist>
  </entry>

Revision history for this message
Sylvain Miossec (sylvain-miossec) wrote :

Hi,
I have same crash problem using ubuntu 12.10 and rhythmbox 2.97, looking at rhythmbox -d.
I used the workaround of thomas bartensud.

Revision history for this message
Walter Garcia-Fontes (walter-garcia) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. We are sorry that we do not always have the capacity to look at all reported bugs in a timely manner. There have been many changes in Ubuntu since that time you reported the bug and your problem may have been fixed with some of the updates. It would help us a lot if you could test it on a currently supported Ubuntu version. When you test it and it is still an issue, kindly upload the updated logs by running apport-collect <bug #> and any other logs that are relevant for this particular issue.

Changed in rhythmbox (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for rhythmbox (Ubuntu) because there has been no activity for 60 days.]

Changed in rhythmbox (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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