I've spent a long time debugging low performance of an
application that uses :memory: database and have found
that sqlite v2 is much faster than v3. After some
digging around it seems that even two proof-of-concept
programs that are identical except for used SQLite
version reproduce this behaviour just fine:

> ./sqlite3_bench 
2564 qps
> ./sqlite_bench
20000 qps

(that's queries per second)

I've attached the source of these two programs, but in
case the attachments get stripped: all they do is open
a database, create a simple table with 3 fields, set
one of them as primary key and add a index on another
field, then insert 100,000 dummy records.
Approximately the same situation is for a test that
selects 100,000 records from this database one by one,
only sqlite3 is about 2x faster in this case (sqlite3:
6000 qps, sqlite2: 20000 qps).

Is this a "known behaviour"? Should I stick to using
sqlite2 for memory databases?

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to