Hi

I've been running some tests against sqlite and have found that inserts are 
gradually slowing down. Since I'm new to sqlite I might be doing something 
wrong and thought I'd ask here if anyone has seen this before or know what 
might be causing this.

The test I'm running creates a database containing a single table (int, int, 
varchar(100)) along with an index (not unique) on the first field. I then 
perform the following operations (all records have unique data in the first 
field):


1.       start a transaction

2.       insert 1000 records

3.       commit

4.       repeat steps 1-3 100 times

5.       delete everything from the table

6.       Start again at step 1

The time taken to execute steps 1-4 increases gradually from taking around 16 
seconds the first time to just over 28 seconds after about 2400 iterations. To 
me, this is alarming since this time increase seems not to be asymptotic (not 
sure though, there is a slight curve on the graph and I haven't done any curve 
fitting) and I fear that I will end up with an unusable slow database after 
some time of use. Even if I shut down the test application and start again (on 
the same database and without re-creating the table), it just continues running 
as before it was stopped, that is, taking 28 seconds (and increasing) if I stop 
it after 2400 iterations.

At first I ran this for shorter periods without an index and think I saw the 
same behavior, but I have to verify that to be sure.

I'm using sqlite version 3.6.14 on Windows XP, compiled using Visual Studio 
2008.

If anyone is interested I can e-mail the collected data and the test program 
I'm using.

Any pointers appreciated.

Thanks,
JP

---------------------------------------------------------------------
"What you take away is more important than what you add." Chuck Moore

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to