Allen wrote:
> 1. It would be nice to have read-only transactions for use with WAL
> databases.  When a read-only transaction was started, it would take a
> "lock" on the WAL and then not advance further into the WAL until the
> transaction ended.  Thus, all select statements issued while the read
> transaction was open would see all writes that had been committed prior to
> the start of the read transaction, but would not see any writes that are
> not yet committed when the read transaction is started or writes that start
> or complete while the read transaction is open.  This would apply to all
> (multiple) select statements that would all see the same view of the data
> during the duration of the read transaction.

How is this different from a normal transaction?

> 3. It would be nice if there were an in-memory mode for WAL databases that
> could be shared by multiple database connections on multiple threads (or
> possibly multiple processes) and that had the benefits of "multi-version
> concurrency" but the data was kept entirely in memory

You could create your own VFS for that.

(While WAL allows _some_ concurrency, SQLite is not really designed for
high concurrency.)


Regards,
Clemens

Reply via email to