Releases: fjall-rs/fjall
Releases · fjall-rs/fjall
2.3.1
Blog post: https://fjall-rs.github.io/post/fjall-2-3/
- [perf] Increase default journal preallocated size to 32 MB
- [perf] Skip journal flush to OS buffers if they are not dirty
- [doc] Update Readme
- [doc] Fix some docs
- [misc] Relaxed write stall thresholds to more-or-less match RocksDB's
2.3.0
coming soon
2.2.0
2.1.2
2.1.1
- [fix] update lsm-tree to 2.1.1 - fix disjoint tree logic
- [fix] correctly check for fatal I/O error on write batch commit
- [fix] benchmarks by @jonahlund
- [perf] skip insert op if
fetch_update
orupdate_fetch
return the same value as read
2.1.0
Blog post: https://fjall-rs.github.io/post/fjall-2-1/
- [docs] Update
TxKeyspace::persist
doc
From lsm-tree
- [perf] Improve performance of open ranges fjall-rs/lsm-tree#56
- [perf] Improve performance of range culling in large trees fjall-rs/lsm-tree#55
- [perf] Use rustc_hash inside BlockCache
- [perf] Do less Arc clones inside Segment construction
- [refactor] Internal refactors
2.0.3
- [fix] Fix config builder blob compression handling when not using default
- [test] the above
2.0.2
- [perf] Fix snapshot point read performance
2.0.1
- [breaking fix] Compression option not being applied to blobs
This is unfortunately a breaking bug fix IF key-value separation was enabled in 2.0.0.
2.0.0
Blog: https://fjall-rs.github.io/post/announcing-fjall-2/
NOTE: This version is not compatible with 1.x.x databases
Features
- Key-value separation & GC API
- Added miniz compression (feature flag
miniz
) - Added keys() & values() iterators
- Allow values bigger than 64K
- Added durability setting for write batches and write transactions (default = Flush buffers to OS)
Other changes
- Changed partition config to also store memtable size & compaction strategy
- Simplified journal implementation at the cost of some multithread performance if large values are written
- Improved journal eviction performance
- Made write stalling less aggressive
- Updated lsm-tree to 2.0.0
- Update docs
- Internal refactors
- Changed all Arc<[u8]> output types to
Slice
- Added more examples