Comment 20 for bug 147270

Revision history for this message
Cody Erben (erben22-launchpad) wrote :

Confirming this is still an issue in 0.2.14devel. Previously, I setup my library, and disabled automatic scanning, and was happy happy ratings land, and never had an issue. Then I rolled over to using Exaile more frequently, and setup automatic scanning to pickup new tunes that might be added into my library folders, and my top rated and other smart playlists using the ratings field stopped.

Just tested to confirm, and indeed the automatic library scan is causing the issue for me (went back to the hardy package, and confirmed it happens there as well):
  - tag 10 tracks with a rating of 5
  - create a smart playlist that selects tracks of rating of at least 5
  - view playlist, 10 expected tracks show up
  - restart exaile, reload smart playlist, confirm 10 expected tracks appear
  - Hop into tools, and choose Rescan collection
  - Wait a minute or two
  - reload smart playlist, and no songs appear
  - Viewing 10 songs in library, the rating field has been reset

For my use, next to genre, track ratings are the next most useful tag I use in my collection of playlists.

Taking a cursory glance at the music.db layout, this issue might be related to rating information being stored in the database fields, but not coming from ID3 tabs. When a track is scanned, perhaps the ID3 info is parsed and updated in the DB, with the rating field being reset to a default value. Next step (python noob here) would be to take a look to see if there is a way to preserve the previous rating setting in the database when a track is rescanned.