lundi 28 décembre 2015

SQLite :memory: Indexes are still writing to disk

I'm trying to get SQLite to operate fully in memory. I'm using the following connection string:

var conn = new SQLiteConnection(@"Data Source=:memory:;Synchronous=OFF;
    Journal Mode=OFF;Cache Size=10000");

I write 10,000,000 inserts wrapped in a transaction - this happens as fast as I would expect and does not touch the disk.

As soon as I start creating indexes on the table, the IO spikes and I can see it is writing temp files to the AppData folder.

I assume there is a setting/PRAGMA I am missing, but I haven't found it. Any help would be appreciated!

Aucun commentaire:

Enregistrer un commentaire