Commit 0d22d8c
docs: Phase 11.12 — promote concurrent-writes-plan.md to canonical reference (SQLR-22) (#132)
Closes plan-doc §10.9 (the docs slice). Phase 11 (concurrent writes via
MVCC + BEGIN CONCURRENT, SQLR-22) is now shipped end-to-end through
11.12 — every shipped sub-phase had been updating the plan-doc
piecemeal; this slice promotes the user-facing surface into one
canonical reference and reshuffles cross-refs so callers stop bouncing
through the historical design record to find the SQL grammar or the
retry-loop shape.
New docs:
- docs/concurrent-writes.md — canonical user-facing reference: TL;DR,
conceptual model (version chains, logical clock, commit validation,
snapshot reads), SQL surface (PRAGMA journal_mode + BEGIN CONCURRENT
+ COMMIT/ROLLBACK rules), embedding API (sibling handles + retry
loop + vacuum_mvcc), per-SDK error mapping table, REPL .spawn/.use/
.conns demo, error semantics, durability + recovery (WAL log records,
v3 format, clock seeding), limitations, references.
New example:
- examples/rust/concurrent_writers.rs — registered as
`cargo run --example concurrent_writers`. Two sibling Connections
via Connection::connect; runs (1) disjoint-row commits both succeed
and (2) interleaved same-row commits where one wins and the other
catches Busy + retries. Verified end-to-end: alice ends at
100 + 10 + 5 + 50 = 165.
Updated cross-refs:
- docs/concurrent-writes-plan.md — redirect banner at the top pointing
readers to the canonical doc; "Status" line updated to "shipped end-
to-end through 11.11a"; plan-doc §10.9 entry annotated with what
landed in 11.12.
- docs/_index.md — Phase 11 summary refreshed to "shipped end-to-end
through 11.11a + 11.12 docs sweep"; new "Concurrent writes" entry
in the "Using SQLRite as a library" section.
- docs/supported-sql.md — PRAGMA journal_mode and BEGIN CONCURRENT
sections gain a "see concurrent-writes.md for the full reference"
callout; the "Not yet supported" entry for BEGIN CONCURRENT removed
(it ships).
- docs/embedding.md — Phase 11.4 section refreshed with a pointer at
the canonical doc + the new example; "what's still ahead" turned
into "what shipped after 11.4" with 11.5 → 11.11a captured.
- docs/roadmap.md — active-frontier blurb expanded to enumerate every
shipped sub-phase + the explicitly parked follow-ups; Phase 11.12
entry promoted to ✅ shipped.
- docs/design-decisions.md — Phase 11 §12a–§12h gain a leading banner
pointing readers at the canonical doc for the user-facing view.
- examples/README.md — concurrent_writers entry added alongside
quickstart + hybrid-retrieval.
Workspace: 615/615 Rust tests still pass; cargo fmt + clippy + doc
all clean. The new example builds + runs successfully.
What's still open in Phase 11:
- 11.10 — Indexes under MVCC (deferred-by-design, plan-doc §10.7)
- 11.11b — "N concurrent writers" bench workload + Go SDK cross-pool
sibling shape (carved out from the original 11.11)
- Checkpoint-drain follow-up (parked half of 11.9 — enables
set_journal_mode(Mvcc → Wal) once MvStore can be drained)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 4495a68 commit 0d22d8c
10 files changed
Lines changed: 490 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
76 | 85 | | |
77 | 86 | | |
78 | 87 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
54 | 55 | | |
55 | 56 | | |
56 | 57 | | |
57 | | - | |
| 58 | + | |
58 | 59 | | |
59 | 60 | | |
60 | 61 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
4 | 12 | | |
5 | | - | |
| 13 | + | |
6 | 14 | | |
7 | 15 | | |
8 | 16 | | |
| |||
296 | 304 | | |
297 | 305 | | |
298 | 306 | | |
299 | | - | |
300 | | - | |
301 | | - | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
302 | 312 | | |
303 | 313 | | |
304 | 314 | | |
| |||
0 commit comments