• v0.8.1 8fdf30b21f

    Release 0.8.1 Stable

    vitalif released this 2022-11-20 11:44:09 +03:00 | 611 commits to master since this release

    • Remove an additional data copy operation when flushing journal (should
      slightly increase write performance)
    • Fix a bug where new writes in the inmemory_journal=false mode could overwrite
      the data currently read by a parallel read operation
    • Fix degraded parity writes for EC N+K when K>1 where the bug could also lead
      to an "assertion failed" error
    • Fix missing journal space check for "big" writes which could lead to
      "prefill_single_journal_entry(): assertion failed..." error in OSD
    • Fix possible "assertion failed: next->prev_wait >= 0" in client in rare cases
    • Fix missing "len" field in vitastor-disk write-journal big_writes
    • Fix possible crash of a full OSD (ENOSPC)
    • Fix CSI build scripts to include newest packages every time
    • Fix CSI endpoint in the liveness probe manifest
    Downloads
     
  • v0.8.0 11ec9ad874

    Release 0.8.0 Stable

    vitalif released this 2022-09-05 13:51:20 +03:00 | 624 commits to master since this release

    • Implement automatic OSD activation via udev and simple on-disk superblock storage
    • Add a new vitastor-disk tool and merge all disk-related functionality there.
      Now it can prepare new OSD disks, upgrade plain old systemd units to the new scheme,
      resize OSD data area, manage OSD services by disk paths, manage superblocks,
      automatically check and disable disk cache, dump and write back journal and metadata.
    • Add a documentation section about vitastor-disk (read it if you want details!)
    • Install systemd services during package installation instead of the older method
      of manually creating them via separate shell scripts
    • Add a new make-etcd script that reuses /etc/vitastor/vitastor.conf to configure etcd
    • Allow to configure block_size, bitmap_granularity and immediate_commit per-pool
    • Fix "fatal error: tried to overwrite non-zero metadata entry" which was possible
      in some cases after unclean OSD shutdown (caused by old metadata entries not being zeroed)
    Downloads
     
  • v0.7.1 101592bbff

    Release 0.7.1 Stable

    vitalif released this 2022-06-05 00:07:24 +03:00 | 690 commits to master since this release

    • Add ISA-L erasure code implementation, now used automatically instead of jerasure when available
    • Fix listings sending too many parallel requests to OSDs
    • Fix rm-data crashing with --wait-list
    • Remove empty inodes from statistics and ls output, after <inode_vanish_time> seconds after deletion
    • Make monitor delete pool statistics when the pool is deleted and thus remove them from df output
    • Log multiple etcd addresses in OSD logs correctly
    • Fix true/false parsing in json configs like no_recovery/no_rebalance
    • Show no_recovery, no_rebalance, readonly flags in status
    Downloads
     
  • v0.7.0 d8313e939a

    Release 0.7.0 Stable

    vitalif released this 2022-05-29 23:39:53 +03:00 | 704 commits to master since this release

    • Add documentation! :-) in Russian and English
    • Implement an NFS proxy for file-based access emulation to Vitastor
      images for non-QEMU based hypervisors like VMWare, as a better way
      than iSCSI
    • Implement "primary affinity tags"
    • Add a patch for libvirt 6.0
    • Fix free_down_raw in cli status
    • Fix a rare bug where OSDs could drop unrelated connections on errors
    Downloads
     
  • v0.6.17 bb84379db6

    vitalif released this 2022-05-06 02:18:01 +03:00 | 719 commits to master since this release

    • Fix incorrect reading of extra metadata block leading to extra unknown objects in stats
    • Fix CSI driver volumeMode: Block support
    • Add block PVC and pod examples
    • Fix build under 32 bit architectures
    • Fix slow connection ramp-up caused by up_wait_retry_interval
    Downloads
     
  • v0.6.16 340a4b4f27

    vitalif released this 2022-04-09 01:16:52 +03:00 | 729 commits to master since this release

    • Implement vitastor-cli status (print cluster status) command
    • Add a new make-osd-hybrid.js script to quickly prepare a lot of hybrid (HDD+SSD) OSDs
    • Implement snapshot deletion for Cinder driver (only works in a healthy cluster)
    • Fix a huge :) bug causing reads to return all zeroes during rebalance. Add a test to prevent it in the future
    • Disconnect NBD proxy correctly without leaving a zombie [vitastor-nbd] process in D state
    • Fix a rare write hang appearing with small write throttling enabled
    Downloads
     
  • v0.6.15 85298ddae2

    vitalif released this 2022-03-06 19:16:34 +03:00 | 747 commits to master since this release

    • Make peering much faster in medium to large clusters
    • Fix a reenterability issue which could rarely lead to peering process hangs
    Downloads
     
  • v0.6.14 117d6f0612

    vitalif released this 2022-02-17 14:43:44 +03:00 | 757 commits to master since this release

    • Fix IPv6 address parsing
    • Fix "cannot read bytes of undefined" in the monitor on a fresh DB
    • Fix possible hangs of read requests on OSD restarts without immediate_commit=all mode
    • Fix OSDs skipping misplaced recovery in some cases
    • Fix OSDs possibly dying with "map::at" errors when other OSDs are stopped
    • Fix division by zero in ls if all pool OSDs are down
    Downloads
     
  • v0.6.13 36f352f06f

    vitalif released this 2022-02-03 01:50:30 +03:00 | 767 commits to master since this release

    • Fix client hangs possible on OSD restarts (bug affected versions from 0.5.11)
    • Fix "Assertion `sqe != NULL' failed" io_uring-related crashes possible
      on some kernels (0.6.11 increased probability of this bug)
    • Fix timeout=0 in NBD proxy
    • Fix build under centos 7
    Downloads
     
  • v0.6.12 c1929cabe0

    vitalif released this 2022-01-24 01:15:25 +03:00 | 788 commits to master since this release

    etcd connection stability, clang & elbrus support

    • Fix build under CLang and Elbrus LCC compilers, making Vitastor compatible
      with Elbrus CPUs :)
    • Completely fix the bug where OSDs didn't connect to peers and incorrectly marked
      PGs as incomplete
    • Limit I/O depth for deletes the same way as for small writes. Makes OSD crashes
      with "Assertion failed: sqe != NULL" during image deletion go away
    • Fix a very old, but rare, journaling bug (credits to https://github.com/mirrorll)
    • Fix flushing of unclean journaled objects leading to OSDs sometimes hanging
      after failover in EC setups (bug was introduced in 0.6.7)
    • Fix several problems that could prevent smooth operation of a Vitastor cluster
      under the condition of partial etcd failure:
      • OSDs could randomly fail due to too strict error handling
      • New clients and OSDs could be unable to start because of the lack of retries
      • CLI could fail some commands because of the lack of retries
      • Monitor could stop receiving state updates because of the lack of websocket pings
    • Fix monitor being unable to rebalance PGs after a downscale of pool pg_size (3->2)
    • Exit with failure when trying to nbd map or benchmark a non-existing image
    • Use HTTP keep-alive for etcd connections
    • Allow to configure etcd request timeouts and retries
    • Allow to configure NBD timeout, max devices and partitions, and set default to
      up to 64 devices with up to 3 partitions each
    Downloads