v2.1.0-alpha.11
ikopylov
released this
20 Sep 21:58
·
13 commits
to master
since this release
Added
- Bobd test mode (#550)
- Added optional get & exist optimization that skips old partitions by its timestamp (#702)
- Added mimalloc allocator for musl target (#688)
- Added jemalloc-profile for memory profiling (#797)
- Proper support for GetSource::ALL requests (#723)
Changed
- BobClient clone overhead reduced (#774)
- Node struct internals placed inside Arc to reduce clone overhead (#724)
- NodeName and DiskName types introduced to reduce clone overhead (#775)
- Avoid Pearl Storage clone (#791)
- Make iouring optional (#567)
- Add different logs for different branches in error on vdisk search (#808)
Fixed
- Ensure correct working when node contains multiple replicas of single vdisk (#654)
- Fix memory leak due to prometheus lib (#788)
- Fix for grinder delete metrics not being initialized (#824)
- Fix chrono deprecated function warning (#832)
- Fix lsof zombie spawn (#830)
Updated
- Pearl updated to v0.19.0 (#798):
- Use InMemoryIndex as an additional filter on Blob level
- Windows support added
- CI: build and test on Windows
- Include file index memory in the calculation of occupied memory
- Remove hard dependency on io uring
- Update offset only when write is imminent to prevent data corruption due to async Future cancellation
- Improved Arc placement in Storage
- Improved visibility levels in Storage
Clone
impl removed fromStorage
- BLOB-wide exclusive lock removed from the write path, instead the short lock on the in-memory index added
- Include BTreeMap overhead in index calculations
MEM_SIZE
const has been added into theKey
trait for proper calculation of memory occupied by the Key struct- Fix fork in test duplicating test environment
- Bug in ObserverWorker that prevents its stop and leads to memory leak
- Converting UnexpectedEOF errors to bincode errors before deserialize() calls