Skip to content

docs(mvcc): proposal for concurrent writes via MVCC + BEGIN CONCURRENT#109

Merged
joaoh82 merged 1 commit into
mainfrom
claude/exciting-sanderson-31d3c9
May 8, 2026
Merged

docs(mvcc): proposal for concurrent writes via MVCC + BEGIN CONCURRENT#109
joaoh82 merged 1 commit into
mainfrom
claude/exciting-sanderson-31d3c9

Conversation

@joaoh82

@joaoh82 joaoh82 commented May 8, 2026

Copy link
Copy Markdown
Owner

Summary

Adds docs/concurrent-writes-plan.md — a tentative Phase 10 design proposal that lifts SQLRite past SQLite's single-writer ceiling by adopting Turso's experimental MVCC approach: in-memory RowVersion chains, BEGIN CONCURRENT with snapshot isolation, and row-level write-write conflict detection at commit. Plan only — no code changes.

The doc covers:

  • Why bother (Turso's reported up-to-4× write throughput uplift on disjoint-row workloads)
  • What Turso does (MVCC index, read/write/commit protocols, WAL reuse, GC, current limitations)
  • SQLRite's current concurrency model and the gap to bridge
  • Proposed design — layered architecture + MvStore, RowVersion, ConcurrentTx data structures
  • Phased plan — 9 sub-phases (10.1 multi-connection foundation → 10.9 docs sweep), each independently shippable
  • SQL & API surface, file-format implications (WAL header v1 → v2; .sqlrite v5 unchanged), risks/non-goals, effort estimate, references

Tracking: SQLR-22 in Marvin.

Test plan

  • Markdown renders cleanly on GitHub
  • Plan to be reviewed before scheduling Phase 10
  • No build / test impact (docs-only)

🤖 Generated with Claude Code

Adds docs/concurrent-writes-plan.md — a Phase 10 design proposal modeled
on Turso's experimental MVCC, lifting SQLRite past SQLite's single-writer
ceiling. Tracked in Marvin (SQLR-22). No code changes; plan only.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@joaoh82 joaoh82 merged commit f662d37 into main May 8, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant