penberg / limbo

Limbo is a work-in-progress, in-process OLTP database management system, compatible with SQLite.
MIT License
924 stars 52 forks source link

`BEGIN CONCURRENT` support #86

Open penberg opened 2 months ago

penberg commented 2 months ago

SQLite has a branch for BEGIN CONCURRENT, which allows more than one writer: https://www.sqlite.org/cgi/src/doc/begin-concurrent/doc/begin_concurrent.md

Let's implement BEGIN CONCURRENT support in Limbo, possibly with in-memory MVCC.

penberg commented 2 months ago

Me and @psarna did some work on doing this with SQLite itself which might be helpful https://github.com/penberg/libsql/tree/mvcc. The MVCC implementation itself is based on Hekaton here: https://github.com/penberg/tihku