shadow1319 / yet-another-music-application

Automatically exported from code.google.com/p/yet-another-music-application
0 stars 0 forks source link

Stoffi startup performance affected by growth of user.config over time #210

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Use Stoffi for a period of time, the startup performance slows down.
2. Delete user.config and restart Stoffi.
3. Stoffi starts immediately.

What is the expected output? What do you see instead?
It would be great if a way could be found to keep the startup performance as 
quick as it is when user.config is brand new.

What release of Stoffi are you using?
1.30

Original issue reported on code.google.com by wic...@gmail.com on 20 Mar 2011 at 7:29

GoogleCodeExporter commented 8 years ago
A possible recommendation is not to use XML to store all the settings, such as 
songs, history, etc. The file grows too quickly, and there is obvious overhead 
in parsing that file.

Please have a look at using SQLite as the database for storing all the 
information Stoffi needs. It is used inside Firefox :)

From their website:

"SQLite is a software library that implements a self-contained, serverless, 
zero-configuration, transactional SQL database engine. SQLite is the most 
widely deployed SQL database engine in the world. The source code for SQLite is 
in the public domain."

SQLite: http://www.sqlite.org/
ADO.NET adaptor for SQLite: http://System.Data.SQLite.org/

Original comment by wic...@gmail.com on 21 Mar 2011 at 3:38

GoogleCodeExporter commented 8 years ago
Yeah, I'll check and see if I can move some of the internal parts over to an 
embedded db. I am looking at both SQL and CouchDB, probably will try both and 
see which is best.

I will still keep some information inside .NET's internal settings (which uses 
an XML serializer). The biggest delay right now at startup is the reading from 
harddrive but we can't really do anything about that, even a database needs to 
read from a file.

However, the structure can improve the startup time by reducing the number of 
reads from the harddrive. That will make it blazingly faster. ;)

Original comment by ephracis on 21 Mar 2011 at 6:29

GoogleCodeExporter commented 8 years ago
I will do my best to migrate to SQLite for Zhou and hope that it will speed 
things up. However, it may slide over to Qin if it isn't as easy as I think. :P

Original comment by ephracis on 29 Sep 2011 at 5:07

GoogleCodeExporter commented 8 years ago
Moving to SQLite will take a lot of effort. I'm moving this to a future 
milestone. However, I have been able to enhance startup time and I am looking 
at adding a splash screen in Qin which may speed up the "feeling" of the 
startup time. I saw a guide on Internet about creating a splash screen in 
unmanaged code which would make it appear almost instantly.

Original comment by ephracis on 8 Jan 2012 at 9:43

GoogleCodeExporter commented 8 years ago

Original comment by ephracis on 21 Feb 2012 at 9:35

GoogleCodeExporter commented 8 years ago

Original comment by christof...@stoffiplayer.com on 24 Apr 2012 at 4:50

GoogleCodeExporter commented 8 years ago

Original comment by christof...@stoffiplayer.com on 21 Jun 2012 at 12:19