• v1.1.0 8222e3c77d

    Release 1.1.0 Stable

    vitalif released this 2023-10-28 00:33:06 +03:00 | 157 commits to master since this release

    New features:

    • Implement client writeback cache
    • Add the third I/O mode: O_DIRECT|O_SYNC (good for Optane)
    • Reduce load on etcd by splitting OSD lease and statistics reporting intervals: etcd_stats_interval (default 30 sec)
    • Make MON automatically filter OSDs by layout (block_size/immediate_commit/bitmap_granularity) to prevent "refusing to start PGs of this pool" errors on misconfiguration
    • Support running fio benchmarks on systems without io_uring
    • Make QEMU driver compatible with QEMU 8.1
    • Document usage of vhost-user-blk

    Bug fixes:

    • Fix resizing disks in QEMU driver (for example, in Proxmox)
    • Fix "unexpected result" in Proxmox driver by making CLI flush output on exit
    • Remove unneeded block_size mismatch warnings on pools without matching PGs
    • Fix possible segfault in vitastor-cli ls -l (usually with deleted pools)
    • Fix QEMU driver compatibility with systems without io_uring
    • Fix monitor eating 100% CPU when etcd is down (caused by infinite retries)
    • Fix potential incorrect write processing with snapshots (not caught in tests but could probably lead to client hangs)
    • Fix buffer insertion in cluster_client (not caught in tests but could probably lead to incorrect writes in rare cases)
    • Fix rare OSD crash during sync operation processing
    • Fix a reenterability issue in cluster_client not reproducible in QEMU/fio, but reproducible with the currently developed K/V database implementation
    • Fix deletion of the first modified object - OSDs could crash if you modified the same object a lot of times, then deleted it, and then modified it again
    • Fix the fio_sec_osd test tool