Elisa db sorts case sensitive

Bug #274466 reported by Benjamin Kampmann
4
Affects Status Importance Assigned to Milestone
Moovida
Fix Released
High
Philippe Normand

Bug Description

The database sorting is case sensitive. That means that first all objects with a their first letter uppercase and then all with the first letter beeing lowercase are shown.

To be able to reproduce this, make sure you have at least one mp3 with tags (artist and or album) that do *not* start with an uppercase letter in your music collection that is scanned with the media scanner.

Steps to reproduce:
 - Start elisa go into your music library
 - wait for the media scanner to be done
 - select either Albums or Artists (the one where you know you have lowercase tag informations)
 - use the scroll bar to scroll to the last letter in your collection

Expected result:
 - behind that letter are only a few entries for Umlaute (aka. non-alphanumeric letters)

Current result:
 - you find a lot of entries that are just lowercased, they are not sorted into the list right

See the screenshots, too

Related branches

Revision history for this message
Benjamin Kampmann (lightyear) wrote :
Revision history for this message
Benjamin Kampmann (lightyear) wrote :
Revision history for this message
Benjamin Kampmann (lightyear) wrote :

The right thing to do here would be to do an case insensitive order_by at the query time ( see [1]). Unfortunately storm does not have a support for that (yet).

There is also the other idea that would actually merge the albums and artists on database level: Use collate already for the table definition (as in [2]). The problem with that is, that it would only work on new created database. The migration of the old content would not work as ALTER TABLE does not support that kind of change in SQLite (see [3]). But that patch is at least very easy. I will attach it :) .

[1] http://<email address hidden>/msg26164.html
[2] http://www.realsoftware.com/listarchives/realbasic-nug/2006-08/msg00296.html
[3] http://www.sqlite.org/lang_altertable.html

Changed in elisa:
importance: Undecided → High
milestone: none → 0.5.x
yyoyo (lionel.martin)
Changed in elisa:
milestone: 0.5.x → 0.5.99
Philippe Normand (philn)
Changed in elisa:
assignee: nobody → Philippe Normand (philn)
status: New → In Progress
Olivier Tilloy (osomon)
Changed in elisa:
milestone: 0.5.99 → none
status: In Progress → Fix Released
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.