Releases: fjall-rs/lsm-tree
Releases · fjall-rs/lsm-tree
1.0.5
- [perf] Rewritten segment reader - improves scan performance by 25% (uncached) to 50% (cached) + less allocations
- [test] Add more tests
- [misc] Internal refactors
1.0.4
- [critical] Make flushing & compacting truly atomic by preventing in-memory manifest to be updated before fully persisting
- [fix] Make segments visible again if Merge compaction fails
- [chore] Internal refactoring
1.0.3
- Allow Levelled Compaction to move down non-overlapping segments
- Remove noisy debug log
- Add more benchmarks
- Internal refactors
1.0.2
- Fix memtable range scan upper bound during snapshot
1.0.1
- Fix tree loading when
segments
folder is missing (prevented CI pipeline from succeeding)
1.0.0
- [breaking] Finalized disk format V1
- [breaking] Tree & snapshot iterators now return a impl DoubleEndedIterator, not an intermediary struct
- Add more tests
- Internal refactors
0.8.0
Breaking
- [breaking] Changed format of block handles to store the last key of
each block - [breaking] Move Tree level_ratio from persisted to ephemeral config
- [perf] Improve point read performance
- [feat] Added ::new Constructor to STCS compaction strategy
- [perf] Use binary search during point reads to find segments inside disjoint levels
- [misc] Added benchmark
- [misc] Added more tests
- [misc] Internal refactors
0.7.0
- Rewrote block index, fixes skewed MVCC (versions of items that span multiple blocks) scenarios
- Remove heap allocation from read hot path
- Improved read performance when using Levelled compaction (#26)
- Dropped serde, serde_json, chrono, rand and fs_extra dependencies (#25)
- Changed remaining file formats (config.json, meta.json, levels.json) to be binary encoded, in preparation of a stable disk format in 1.0.0
- Simplified disk segment IDs to be u64
- Internal refactors
- Added more tests and benchmarks
0.6.5
- Fix build
0.6.4
- Fix iterating returning wrong items when repeatedly alternating between .next() and .next_back()
- Update dependencies
- Update some docs
- Minor refactors