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