-
62caf9fefc
tests/fuzz: tighten the listIndexes NamespaceNotFound comment
main
Aleksey Shakhmatov
2026-08-04 08:55:55 +03:00
-
a9f625f82a
tests/fuzz: listIndexes on a namespace the prefix never created is expected
Aleksey Shakhmatov
2026-08-04 00:41:03 +03:00
-
319a515b89
pager: reuse the data file when there is no checkpoint to honour
Aleksey Shakhmatov
2026-08-04 00:40:30 +03:00
-
1814020df9
db/pager: an append resumes inside its extent after a checkpoint
Aleksey Shakhmatov
2026-08-04 00:39:44 +03:00
-
6c7f1f2e77
tests/fuzz: crash-consistency fuzzer (crash-fuzz.js + README)
Aleksey Shakhmatov
2026-08-03 23:38:23 +03:00
-
d597597a4c
plan/results: record the two post-gate CRUD corrections
Aleksey Shakhmatov
2026-08-04 00:03:02 +03:00
-
21489723a9
db: a write that changes nothing is not a write
Aleksey Shakhmatov
2026-08-04 00:02:17 +03:00
-
53f88e6d3b
update: replacement-style writes
Aleksey Shakhmatov
2026-08-03 23:52:22 +03:00
-
504179acd1
results: the M0 gates, measured
Aleksey Shakhmatov
2026-08-03 23:09:43 +03:00
-
4b70ce6da9
pager: a page reservation belongs to its consumer, not to the pager
Aleksey Shakhmatov
2026-08-03 22:51:15 +03:00
-
5228ed740a
db/pager: reclaim what churn abandons
Aleksey Shakhmatov
2026-08-03 22:38:57 +03:00
-
b20ae92cbf
db: drop the docs hashmap; the _id_ index is the lookup
Aleksey Shakhmatov
2026-08-03 21:58:21 +03:00
-
148e03ac9f
db: compaction becomes a data-file rebuild
Aleksey Shakhmatov
2026-08-03 21:48:04 +03:00
-
138b7f706f
db/storage: reclaim the log once a checkpoint covers it
Aleksey Shakhmatov
2026-08-03 21:35:03 +03:00
-
58e645b969
db: checkpoint the engine, and open from it
Aleksey Shakhmatov
2026-08-03 21:25:46 +03:00
-
d7f7ebb994
pager: copy-on-write above the stable mark
Aleksey Shakhmatov
2026-08-03 21:11:27 +03:00
-
2e7f72074f
index: the node arena and overflow slab live in the data file
Aleksey Shakhmatov
2026-08-03 20:55:48 +03:00
-
9dda943f26
db: documents live in the data file
Aleksey Shakhmatov
2026-08-03 20:41:08 +03:00
-
c3e7368477
pager: watermark double buffer, page free list, and the ordering that matters
Aleksey Shakhmatov
2026-08-03 20:31:59 +03:00
-
04d56f5b66
pager: the data file, its page allocator and the mmap over a fixed reservation
Aleksey Shakhmatov
2026-08-03 20:17:33 +03:00
-
9390021b1e
index/commands: stream whole-index scans; add a reverse leaf iterator
Aleksey Shakhmatov
2026-08-03 20:05:38 +03:00
-
491a4d0a6a
index: a leaf record's payload becomes the document's slab offset
Aleksey Shakhmatov
2026-08-03 19:23:17 +03:00
-
90de7820da
tests/spec: MongoDB spec-test runner and the M0 scorecard
Aleksey Shakhmatov
2026-08-03 18:58:01 +03:00
-
e2c25a986b
wire/server: honour moreToCome on OP_MSG requests
Aleksey Shakhmatov
2026-08-03 18:55:50 +03:00
-
d867c37d32
commands: stop leaking the catalog lock on a nameless command
Aleksey Shakhmatov
2026-08-03 18:55:35 +03:00
-
aee23cb028
index/db: enforce _id uniqueness through the _id_ index
Aleksey Shakhmatov
2026-08-03 18:15:21 +03:00
-
f61416f44a
index/db: heap-allocate secondary indexes
Aleksey Shakhmatov
2026-08-03 17:21:33 +03:00
-
411a380d38
commands: fix a remote invalid free in aggregate $sort
Aleksey Shakhmatov
2026-08-03 17:09:21 +03:00
-
06504127fb
index: route arena access through accessors; tighten reserve_for's bound
Aleksey Shakhmatov
2026-08-03 17:09:03 +03:00
-
13d7b79f2c
plan: amend the M0 decision record for copy-on-write; add AGENTS.md
Aleksey Shakhmatov
2026-08-03 17:08:41 +03:00
-
86ae8fa8af
style: adopt TigerStyle across src/; add docs/TIGER_STYLE.md
Aleksey Shakhmatov
2026-08-03 17:08:21 +03:00
-
d4c9b04f21
rename project to MultiforaDB
Aleksey Shakhmatov
2026-08-03 12:35:01 +03:00
-
ac464f2b92
tests/e2e: iteration-to-iteration benchmark harness
Aleksey Shakhmatov
2026-08-03 12:33:28 +03:00
-
720540860a
db/storage: close three data-loss paths in commit and compaction
Aleksey Shakhmatov
2026-08-03 11:55:52 +03:00
-
c8d547fef5
db/commands: acknowledged writes reach the disk again
Aleksey Shakhmatov
2026-08-03 00:09:11 +03:00
-
ecd28d9b26
engine: decompose the global lock; cross-connection group commit (roadmap item 5)
Aleksey Shakhmatov
2026-08-02 23:26:24 +03:00
-
570900a6ef
storage: byte documents in a per-collection slab (roadmap item 4)
Aleksey Shakhmatov
2026-08-02 22:15:07 +03:00
-
b4585106f1
storage: block-framed LZ4-compressed log (roadmap item 3)
Aleksey Shakhmatov
2026-08-02 21:35:22 +03:00
-
58914a69c3
index: ordered _id index (roadmap item 2)
Aleksey Shakhmatov
2026-08-02 21:18:40 +03:00
-
61fe952125
index: B+tree over the encoded keys (roadmap item 1)
Aleksey Shakhmatov
2026-08-02 21:10:25 +03:00
-
71112b0ff7
ROADMAP: write up the remaining performance work
Aleksey Shakhmatov
2026-08-02 20:09:21 +03:00
-
b3b351167f
README: current numbers and remaining gaps
Aleksey Shakhmatov
2026-08-02 20:06:31 +03:00
-
4aaa555563
index/commands: let an index supply the sort order
Aleksey Shakhmatov
2026-08-02 19:56:33 +03:00
-
2e508d3ecf
index/db: locate index entries by regeneration, not by scanning
Aleksey Shakhmatov
2026-08-02 19:47:44 +03:00
-
6feacc21cd
index: hold encoded byte keys instead of Value slices
Aleksey Shakhmatov
2026-08-02 19:28:40 +03:00
-
ea1f0f09cf
bson: order-preserving key encoding
Aleksey Shakhmatov
2026-08-02 19:22:10 +03:00
-
75e412a4af
query/commands/wire: trim the scan and request paths
Aleksey Shakhmatov
2026-08-02 19:13:29 +03:00
-
552b916833
tests/e2e: record the Phase 1 gate measurement
Aleksey Shakhmatov
2026-08-02 18:34:20 +03:00
-
9eecb5092c
query/commands: top-k sort selection and an allocation-free decorate pass
Aleksey Shakhmatov
2026-08-02 18:33:04 +03:00
-
ff37e6c813
index/commands: bulk index build, binary-searched ranges, limit push-down
Aleksey Shakhmatov
2026-08-02 18:27:28 +03:00
-
556ad7dc86
storage/db: XxHash3 record integrity, garbage-ratio compaction
Aleksey Shakhmatov
2026-08-02 18:20:40 +03:00
-
d90cde394c
commands/e2e: drop topologyVersion from the handshake; rename to mongo-lite
Aleksey Shakhmatov
2026-08-02 15:09:25 +03:00
-
dc92064b95
docs: TTL limits and error codes in the README
Aleksey Shakhmatov
2026-08-02 14:39:26 +03:00
-
3c1ab6f656
index/db/commands/server: TTL indexes
Aleksey Shakhmatov
2026-08-02 14:36:45 +03:00
-
7482042f34
index/db/commands: fold duplicated index logic into single definitions
Aleksey Shakhmatov
2026-08-02 13:40:42 +03:00
-
0d264c6c57
index: guard the $in cartesian cap against u64 overflow; drop debug print
Aleksey Shakhmatov
2026-08-02 12:41:28 +03:00
-
adcf0014a9
docs/e2e: indexes out of 'not implemented'; e2e3 covers driver index APIs
Aleksey Shakhmatov
2026-08-02 12:40:30 +03:00
-
7f2f7c6977
commands: createIndexes/listIndexes/dropIndexes + planner wiring
Aleksey Shakhmatov
2026-08-02 12:38:25 +03:00
-
a733fc1993
db: engine maintenance for secondary indexes
Aleksey Shakhmatov
2026-08-02 12:25:03 +03:00
-
a38ddc2f50
index: secondary index core — entries, search, planner, _id fast path
Aleksey Shakhmatov
2026-08-02 12:21:22 +03:00
-
662df9b121
tests/e2e: pin driver deps (package.json/package-lock.json); ignore node_modules
mongo-light
2026-08-02 10:57:02 +03:00
-
c29c09d6e8
query: support bare regex filter values and array-index dot paths
mongo-light
2026-08-02 10:56:43 +03:00
-
4b975d1c93
README: document read/write lock concurrency model
mongo-light
2026-08-02 10:42:39 +03:00
-
e14cb8cef9
commands: add concurrent insert/find stress test; fix lock defer scoping in dispatch
mongo-light
2026-08-02 10:39:55 +03:00
-
c0550291e2
db: add concurrent readers/writers stress test on threaded Io
mongo-light
2026-08-02 10:32:02 +03:00
-
f705bcf458
commands: classify commands into none/read/write lock scopes
mongo-light
2026-08-02 10:30:06 +03:00
-
b71b97824e
db: replace engine mutex with writer-preferring RwLock, add lock_read/unlock_read
mongo-light
2026-08-02 10:29:33 +03:00
-
62a4c4244c
bson: make ObjectIdGen counter atomic for concurrent connections
mongo-light
2026-08-02 10:29:16 +03:00
-
4de42091a4
baseline: mongo-light working tree before concurrency refactor
mongo-light
2026-08-02 10:29:01 +03:00