larrettp;303738 Wrote: 
> Can you let me know where it is, please?

If you install svn you can get the latest version by checking out:
http://svn.slimdevices.com/repos/slim/7.0/trunk/server/

In a standard SqueezeCenter installation, you will also find all the
code in the server/Slim directory.

On Windows installation, the code is compiled into .exe files, so to
run changed code you will need to install ActiveState perl and run the
slimserver.pl file instead of Squeeze.exe (or whatever the executable
is called). On Linux/Mac installations, you can just change the code
and run the new version by starting SqueezeCenter by running the
slimserver.pl file. 

A database abstraction layer is implemented throught the DBIx library
in Slim/Schema*, so you won't see the exact SQL statements executed
directly in the code.

All the database relevant stuff happens in server/Slim/Schema*.

I think the playlist editing is initiated from
Slim/Web/Pages/Playlist.pm, but I'm not completely sure.

A recommendation to make it a bit easier is that you enable logging in
SqueezeCenter Settings according to my previous post. This will let you
see the SQL executed and you should also be able to see which ones that
take most time. You can then make a copy of the table data with your
new structure/indexes and run your version of the queries directly from
a SQL client to check the difference. You can also run the SqueezeCenter
queries directly in a SQL client with the EXPLAIN directive to check if
the indexes available today are used correctly.

A bit of warning when you do this is that indexes used can differ
between different platforms, so don't trust completely that MySQL is
using the same indexes on ReadyNAS as it does on a Mac/PC. I've
personally seen difference between the Windows and Linux platforms
earlier when I've had similar problems with MySQL.

Finally, as I've already indicated earlier, doing a big change of the
database structure will affect the SqueezeCenter code a lot, so to be
able to convince the developers that this is worth the work I think
that you are going to have to have proof that it improves the
performance a lot. I also think that it needs to improve the
performance for a normal user, if it's only a problem for users having
7500 tracks in their playlist I have a feeling that the developers will
just ignore it as a special case not worth doing a lot of work to
solve.

Also, as I said earlier, any suggestion or questions to the developers
need to happen in the Developers section in this forum. So please, post
your findings in the developers section when you have done the work, if
you are just posing it here there is a risk that the right people won't
see it.

Finally, as a side note, if the major problem is the time when you hit
play on a playlist, it might help to play the playlist through the
Dynamic Playlist plugin. If you play it through the Dynamic Playlist
plugin, the playlist will be loaded in small steps, it starts by
loading the first 10 tracks and after the first track has been played
it loads the 11'th track and so on. Pretty much the same algorithm as
the built-in Random Mix plugin but based on a saved ordered playlist.
However, this won't help with the performance problems during editing
of playlists.


-- 
erland

Erland Isaksson
'My homepage' (http://erland.homeip.net) 'My download page'
(http://erland.homeip.net/download)
(Developer of 'TrackStat, SQLPlayList, DynamicPlayList, Custom Browse,
Custom Scan,  Custom Skip, Multi Library and Database Query plugins'
(http://wiki.erland.homeip.net/index.php/Category:SlimServer))
------------------------------------------------------------------------
erland's Profile: http://forums.slimdevices.com/member.php?userid=3124
View this thread: http://forums.slimdevices.com/showthread.php?t=45261

_______________________________________________
discuss mailing list
discuss@lists.slimdevices.com
http://lists.slimdevices.com/lists/listinfo/discuss

Reply via email to