109 Commits

Author SHA1 Message Date
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
9473c89330 checkin part 2 solution
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-24 14:32:13 +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 Z
274a2cb7a2 finish 2.1 and tests
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-23 13:44:48 +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
d694f8fb00 add writeup for 2.1
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-22 17:33:35 +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
Alex Chi Z
fa35a7dc9e finish week 1 day 6
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 17:40:47 +08:00
Alex Chi Z
a2d8b3c865 more hints for w1d5
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 15:36:37 +08:00
Alex Chi Z
8be0a2d475 finish week 1 day 5 read path
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 15:26:22 +08:00
Alex Chi Z
99da8855b8 update copy test command
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 14:47:20 +08:00
Alex Chi Z
9eb197114d finish week 1 day 3+4 block/sst
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 14:21:09 +08:00
Alex Chi Z
f88394a686 add week 1 day 3 blocks
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-21 13:55:49 +08:00
Alex Chi
c6e700e2ea pitfall on merge iterator
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-21 12:03:40 +08:00
Alex Chi
892e6ab8f7 add week 1 day 2 tutorial
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-21 11:56:09 +08:00
Alex Chi
f7f2fd37e4 add w1d1 and update starter code
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-20 21:54:16 +08:00
Alex Chi
4928ececba ensure sync
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-20 11:16:55 +08:00
Alex Chi
b1458a66b2 fix warnings
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-20 11:14:19 +08:00
Alex Chi
9fd30f6aa8 sync starter code
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-20 11:11:09 +08:00
Alex Chi
cfa7c0c2af fix warnings
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-19 17:44:38 +08:00
Alex Chi
bb535aec75 fix test error
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-19 17:34:23 +08:00
Alex Chi
6b24d6dfab finish persistence
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-19 17:28:47 +08:00
Alex Chi
13ae8fe8fb fix read path after compaction
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-19 16:10:18 +08:00
Alex Chi Z
49c22152ae add wal and manifest
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-19 11:21:38 +08:00
Alex Chi
41d860e987 support force full compaction
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 19:49:36 +08:00
Alex Chi
3aad027e23 cli: add quit command
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 19:41:21 +08:00
Alex Chi
53cb1fe4a4 finish compaction
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 19:40:05 +08:00
Alex Chi
ce33f62be6 add compaction thread to lsm storage
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 17:51:24 +08:00
Alex Chi
9620a57211 fix fmt
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 15:15:51 +08:00
Alex Chi
22491094cb fix compaction task info header
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 14:55:43 +08:00
Alex Chi
693e7f2e6a finish leveled compaction
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2024-01-18 14:50:12 +08:00
Alex Chi Z
81bd372524 record last key in meta
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-17 16:49:12 +08:00
Alex Chi Z
e622bee18a check compaction converge for simple leveled
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-17 16:23:58 +08:00
Alex Chi Z
11ff04227f compute read amp for tiered compaction
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-17 15:49:43 +08:00
Alex Chi Z
70b1da4553 add simple leveled compaction
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-17 15:42:52 +08:00
Alex Chi Z
f93a8a1bd8 add tiered compaction + compaction simulator
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-17 14:51:15 +08:00
Alex Chi Z
a9fca43f79 add compaction controller + simulator
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-16 16:30:01 +08:00
Alex Chi Z
327f6badef separate week 1 solution
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-16 16:00:51 +08:00
Alex Chi Z
d109882d89 add compaction skeleton (#16)
* add compaction skeleton

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

* remove tombstone when compact to bottom-most level

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

* new plan

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

---------

Signed-off-by: Alex Chi <iskyzh@gmail.com>
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-10 14:25:23 +08:00
Alex Chi Z
e82428cb39 bump toolchain
Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
2024-01-10 14:12:34 +08:00
Xu
a5ac71c99f docs: update solution & starter code documentation for day 2 (#20)
* feat(docs): update day 2 starter code documentation

* feat(docs): update day 2 solution code documentation
2023-07-11 00:05:40 -04:00
Xu
de7f2ec263 docs: add comments & hints for day one starter and reference code (#18)
* feat(docs): Improve/Add comments & some hints for day one starter code

* feat(docs): Add comments for day one solution code

* feat(docs): Add figure for block storage format in starter code (block.rs)
2023-07-11 00:05:34 -04:00
Zhao Ziqian
71ead8889a feat(code): map + unwrap_or -> map_or (#13) 2023-02-21 17:45:35 -05:00
Alex Chi
fd4bb0162a feat(docs): finish part 4
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 23:45:53 -05:00
Alex Chi
d8cc9b2cf8 refactor: move iterator trait to parent mod
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 18:25:41 -05:00
Alex Chi
7a571a7c7d feat(tests): day4 tests
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 18:14:22 -05:00
Alex Chi
51e075c1ed feat(code): add block cache
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 18:07:18 -05:00
Alex Chi
86503ac58d fix(code): use rwlock in storage
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 17:13:52 -05:00
Alex Chi
0aff26af38 feat(code): finish part 4
Signed-off-by: Alex Chi <iskyzh@gmail.com>
2022-12-24 16:27:42 -05:00