79 Commits

Author SHA1 Message Date
ECROF88
8fb4176e71 First Commit
Some checks failed
CI (main) / build (push) Has been cancelled
CI (main) / deploy (push) Has been cancelled
2025-10-20 20:12:40 +08:00
lxc
fc4765b925 Fix wrong input type of put_batch (#146)
* Fix wrong input type of put_batch

Update wal.rs

* fix

Signed-off-by: Alex Chi <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
Co-authored-by: Alex Chi <iskyzh@gmail.com>
2025-05-31 14:08:31 +08:00
Liu Jinyi
4c8d4ebf23 docs: specify the updated LsmIterator::new constructor signature (#150) 2025-05-31 14:04:13 +08:00
Ligh0x74
6fba57ac4d fix: handle the exclude boundary logic of the memory table (#140)
* fix: handle the exclude boundary logic of the memory table

* add comments

Signed-off-by: Alex Chi <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
Co-authored-by: Alex Chi <iskyzh@gmail.com>
2025-05-05 18:08:21 +08:00
Alex Chi
0fbb32ecca fix clippy warnings
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2025-05-05 17:51:27 +08:00
Ligh0x74
09615d9ab3 sync: synchronize the methods used in the w3d4 test to mini-lsm-starter (#141)
Co-authored-by: Alex Chi <iskyzh@gmail.com>
2025-05-05 17:40:20 +08:00
lxc
d383d70763 Update watermark.rs (#144)
add function that tests require
2025-05-05 17:38:02 +08:00
lxc
37a6d90795 Update mvcc.rs (#143)
* Update mvcc.rs

fix that tests can't use watermark

* fix fmt

Signed-off-by: Alex Chi <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
Co-authored-by: Alex Chi <iskyzh@gmail.com>
2025-05-05 17:36:44 +08:00
Alex Chi Z.
1d9693c22f feat: bump to Rust edition 2024 (#132)
* feat: bump to Rust edition 2024

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* allow deadcode

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* fix deploy to pages

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* fix fmt

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* update actions

Signed-off-by: Alex Chi <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
2025-03-09 16:11:52 -04:00
SteveLauC
662b1a855f chore: remove a duplicate attribute (#125) 2025-03-09 15:57:09 -04:00
Alex Chi Z
38c7ef6f2f docs: s/tutorial/course
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2025-01-19 19:28:07 -05:00
Alex Chi Z.
7f4b204064 relicense mini-lsm-book to CC BY-NC-SA 4.0 (#118)
* relicense mini-lsm-book to CC BY-NC-SA 4.0

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>

* clearify license

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>

* fix fmt

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>

* fix fmt

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2025-01-19 19:24:12 -05:00
Alex Chi Z.
23802b23dd chore: bump compiler version and clippy fixes (#105)
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-12-09 00:23:03 -05:00
Alex Chi Z.
8420e6ec1a fix(docs): update universal compaction instructions (#101)
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-11-12 21:56:40 -05:00
Alex Chi Z.
9cca6ad420 fix: universal compaction condition (#97)
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-11-12 21:27:00 -05:00
Eikasia30
77e15efad4 fix: avoid leveled compaction crash when recovering from manifest (#63)
* Fix: Avoid leveled copaction crash when recovering from manifest

* Also sort SSTs in manifest recovery

* Add `in_recovery` flag to `apply_compaction_result`

- Don't sort the SSTs inside `apply_compaction_result` if in recovery
2024-07-02 20:25:43 -04:00
Alex Chi Z
2b527fd6dc fix: ensure WAL is atomic for each write batch (#84)
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-07-02 20:23:33 -04:00
Foreverhighness
aa35a96dfc fix: clippy lint (#80)
* clippy(merge_iterator): fix `clippy::non_canonical_partial_ord_impl` lint.

* clippy(bloom): fix `clippy::manual_clamp` lint.

* clippy(compact): fix `clippy::assigning_clones` lint.

* clippy(key): fix `clippy::legacy_numeric_constants` lint.

* clippy(mem_table): fix `clippy::missing_transmute_annotations` lint.
2024-06-23 12:45:56 -04:00
Yue Yin
afe6c9549d Fix typos in W3D5 writeup and code (#67) 2024-03-24 15:23:39 -04:00
0x29a
621d7a8cf3 chore: typos & refine comments (#65)
* typo in  week2-01-compaction.md

* chroe: typos & add comments

* chore: more typos

* Update week2-01-compaction.md

---------

Co-authored-by: Alex Chi Z <iskyzh@gmail.com>
2024-03-24 15:23:07 -04:00
dimbtp
afad25b6fd fix: call lsm::close when closing the cli (#60) 2024-03-18 17:58:37 -04:00
Yongxin-Hu
2015ee1703 fix: typo (#61) 2024-03-16 13:04:12 -04:00
0x29a
f1fa216d0e chore: typos (#42) 2024-02-06 11:38:07 +08:00
PinelliaC
0b2243acf0 refactor: error handling (#41) 2024-02-06 11:37:59 +08:00
Alex Chi
fcb01d4704 sync starter code with refsol on MergeIterator
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-02-05 12:49:07 +08:00
Yu Lei
71342d4384 feat: refine the CLI tool (#33)
* implement a repl

* remove debug log
2024-01-30 17:04:25 +08:00
Alex Chi Z
a6c32e8af8 finish full tutorial
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-30 15:42:15 +08:00
Alex Chi Z
acc3c959aa add 3.6
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-30 14:48:03 +08:00
Alex Chi
c45d6c8261 add 3.3 test
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-29 20:43:10 +08:00
Alex Chi
37f2c5aff0 fix compaction split bug and add 3.1 test
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-28 16:01:40 +08:00
Alex Chi
5f1b10b03b use symlink when possible
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-28 15:17:53 +08:00
Alex Chi
b4485f49c3 finish 2.7
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-28 14:08:08 +08:00
Alex Chi
062fa86f42 more links in the tutorial
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-26 22:32:55 +08:00
Alex Chi
78ec7c9375 finish skeleton for serializability check
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-26 18:14:42 +08:00
Alex Chi
6025bb8dca implement mvcc compaction + snapshot
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-26 16:52:37 +08:00
Alex Chi
14c3be390c add week 2 day 5 + 6 tests
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-26 15:19:56 +08:00
Alex Chi
218c73f384 patch memtable and add ts for wal
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-25 23:09:16 +08:00
Alex Chi
89acc23208 implement 2.7
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-25 21:53:47 +08:00
Alex Chi
8dbaf54e38 add compaction tests and fix bugs in compaction
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-25 15:25:23 +08:00
Alex Chi
971d0b1c81 make mvcc impl compile with new key module
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-25 12:28:33 +08:00
Alex Chi Z
a3a92359e1 add key abstraction and prepare for MVCC (#28)
* add key abstraction and prepare for MVCC

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* a little bit type exercise

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* refactor tests

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* fix clippy warnings

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* refactor starter code

Signed-off-by: Alex Chi <iskyzh@gmail.com>

* final touch docs

Signed-off-by: Alex Chi <iskyzh@gmail.com>

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-25 10:59:08 +08:00
Alex Chi
64bb89eee8 finish part 2
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-24 17:34:25 +08:00
Alex Chi
0d995dff19 fix clippy warnings
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-24 14:39:00 +08:00
Alex Chi
4d676a451a sync api with refsol
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-24 14:37:16 +08:00
Alex Chi
9473c89330 checkin part 2 solution
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-24 14:32:13 +08:00
Alex Chi Z
415c3c4eef finish chapter 2.4
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-23 15:53:20 +08:00
Alex Chi Z
016c6ccadc finish 2.2 write-up
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-23 14:43:44 +08:00
Alex Chi
bb8eb4a1a2 add week2day1 test
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-22 22:27:58 +08:00
Alex Chi
39924ee538 update week 2 starter code
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-22 22:05:47 +08:00
Alex Chi
e8601433d6 finish week 1 day 7
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-21 19:33:05 +08:00