Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Jens Alfke
> On Aug 12, 2019, at 12:34 AM, Kira Backes wrote: > > Our code base does not use > transactions at all (we have a segmented code base protected by > mutexes for a whole section, so reads/writes do not conflict ever). This will really hurt performance of multiple writes, since each write

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Kira Backes
Thank you very much, I hope my example which probably many users tap into unknowingly might help :-) mit freundlichen Grüßen, Kira Backes On Mon, 12 Aug 2019 at 12:58, Richard Hipp wrote: > > The documentation on transactions at > https://www.sqlite.org/lang_transaction.html was written long,

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Richard Hipp
The documentation on transactions at https://www.sqlite.org/lang_transaction.html was written long, long ago, apparently long before WAL mode was available, and is in serious need of updating and improvement. I'm working on that now -- D. Richard Hipp d...@sqlite.org

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Kira Backes
Thank you Rowan, in the context of *locks* it is kinda documented, but not in the context of transactions :( Just have a look at the error description: https://www.sqlite.org/rescode.html#busy_snapshot > The SQLITE_BUSY_SNAPSHOT error code is an extended error code for SQLITE_BUSY > that

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Rowan Worth
On Mon, 12 Aug 2019 at 16:55, Kira Backes wrote: > > When you do not use explicit transactions, SQLite will automatically > create implicit transactions. > > But the documentation only says that an implicit transaction is > created for data-changing queries like INSERT: > >

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Kira Backes
> When you do not use explicit transactions, SQLite will automatically create > implicit transactions. But the documentation only says that an implicit transaction is created for data-changing queries like INSERT: https://www.sqlite.org/lang_transaction.html > Any command that changes the

Re: [sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Clemens Ladisch
Kira Backes wrote: > Our code base does not use transactions at all When you do not use explicit transactions, SQLite will automatically create implicit transactions. says: | An implicit transaction (a transaction that is started automatically, |

[sqlite] SQLITE_BUSY (SQLITE_BUSY_SNAPSHOT) due to a simple SELECT query -- Documentation needed!

2019-08-12 Thread Kira Backes
Dear sqlite mailing list, I had to spend 2 days debugging a SQLITE_BUSY_SNAPSHOT, and reading the documentation did not help me. Our code base does not use transactions at all (we have a segmented code base protected by mutexes for a whole section, so reads/writes do not conflict ever). We