Hello Guys, As some of you may know i have been doing a Genre + Browser patch, Aaron told me that there was already one around but it was suffering from some performance problems, I have been playing with Banshee to see where more performance can be achieved; one of the stuff i saw is that because of the kind of application there is a lot of String operations and comparisons and although there is no apparent way around them i think i found the solution; for this the banshee DB will have to be normalized on 3 fields(Genre, Artist, AlbumTitle) and make this objects immutable and when possible make instance equivalence instead of string compares .... Well the current patch is by no means perfect but it will be very helpful if more people take a look at it, I still have to change the Order functions to take advantage of it, but the browser is using it. Also I am using a lot of filtered models and not doing much Reloading .... Please take a look and comment on it, If I am correct this should be faster and use less memory because there will be less strings being created and dispose. I plan to change next the search functions and then the Playlist view to use this concept instead of reloading all the time. also that will allow me to add Search to the Library again without double filtering the lib. Regards, Oscar.
Attachment:
banshee-normalized.batch.bz2
Description: Binary data