MrCroxx / RunKV

[WIP] An experimental cloud-native distributed KV engine for OLTP workload.
MIT License
68 stars 7 forks source link

feat: impl memtable and memtable iterator #46

Closed MrCroxx closed 2 years ago

MrCroxx commented 2 years ago

Danger: unsafe impl Send + Sync for Node (read_only + atomic) and IterRef (inner always Sync + Send). Check twice!!!

Ref: #44 . Close: #47 .

codecov-commenter commented 2 years ago

Codecov Report

Merging #46 (f2fb3e9) into main (97bc5c6) will increase coverage by 0.77%. The diff coverage is 93.18%.

Impacted file tree graph

@@            Coverage Diff             @@
##             main      #46      +/-   ##
==========================================
+ Coverage   89.56%   90.33%   +0.77%     
==========================================
  Files          26       28       +2     
  Lines        2433     2555     +122     
==========================================
+ Hits         2179     2308     +129     
+ Misses        254      247       -7     
Impacted Files Coverage Δ
storage/src/lsm_tree/iterator/mod.rs 66.66% <ø> (ø)
storage/src/lsm_tree/utils/skiplist/list.rs 72.90% <ø> (+13.54%) :arrow_up:
storage/src/lsm_tree/components/memtable.rs 70.58% <70.58%> (ø)
rudder/src/meta.rs 10.34% <75.00%> (-72.99%) :arrow_down:
storage/src/lsm_tree/iterator/memtable_iterator.rs 97.16% <97.16%> (ø)
storage/src/lsm_tree/iterator/sstable_iterator.rs 93.36% <100.00%> (ø)
storage/src/lsm_tree/utils/skiplist/arena.rs 92.85% <0.00%> (+7.14%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 97bc5c6...f2fb3e9. Read the comment docs.