The app is running on Windows XP machines and I assume that disk files
are cached. The strange thing is that the time it takes for the initial
read into RAM after install and first use is significantly shorter than
after a reboot. For example, if you just installed the app and start
it, the first time you do a query you see results in about 2 seconds.
Subsequent queries come back much almost instantaneously. If the user
reboots the machine or waits until the next day and performs the same
query, it now takes about 15 seconds. After the 15 seconds, results
come back and subsequent queries are instantaneous. I am not sure if
this has anything to do with it but the app is a Deskband that lives in
the taskbar on windows.
Jay Sprenkle wrote:
On 1/19/06, Geoff Simonds <[EMAIL PROTECTED]> wrote:
I have created a client application that is always running on a users
desktop. The application accepts user input and then uses SQLite to
perform a few simple queries against a single db file that contains 4
tables. The performance is fantastic after the initial install and
normal usage. When the user leaves for the night and tries a query in
the morning, the app hangs for 20 seconds and then finally comes back
with the results. If the user then duplicates the query immediately
afterward, the query is almost instantaneous. In addition, if at any
point the user reboots the machine and then retries the query, the same
delay happens. The time is spent in the SQLiteDataReader.read()
method. Does anybody have any thoughts on why this is happening?
Thanks for any help.
Does your system cache disk files?
The first time it reads the file into cache and after that it's read from RAM.