Skip to content

v2.1.0-alpha.11

Compare
Choose a tag to compare
@ikopylov ikopylov released this 20 Sep 21:58
· 13 commits to master since this release
9f49674

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 from Storage
    • 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 the Key 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