Re: [sqlite] Locking causing exponentially degraded peformance with multiple processes

2008-05-16 Thread John Stanton
By using BEGIN IMMEDIATE you lose any chance of concurrency. Samuel Neff wrote: We're running into a lot of very slow queries and db locks when running with multiple processes accessing the same database. As a test we created a small application that has only two threads and a small single

Re: [sqlite] Locking causing exponentially degraded peformance with multiple processes

2008-05-16 Thread Samuel Neff
Yes, for write transactions, begin immediate will cause the second write transaction to wait on the first. However, the reads are done without an explicity transaction so the reads should still proceed while the writes have a reserved lock in place, right? And even if there is no concurrency, at

[sqlite] Locking causing exponentially degraded peformance with multiple processes

2008-05-15 Thread Samuel Neff
We're running into a lot of very slow queries and db locks when running with multiple processes accessing the same database. As a test we created a small application that has only two threads and a small single table database. RunRead reads all data from the one table (100 records). RunWrite