• v1.7.1 e898335b8d

    Release 1.7.1
    All checks were successful
    Test / buildenv (push) Successful in 15s
    Test / build (push) Successful in 3m56s
    Test / npm_lint (push) Successful in 12s
    Test / test_cas (push) Successful in 10s
    Test / make_test (push) Successful in 39s
    Test / test_change_pg_size (push) Successful in 11s
    Test / test_change_pg_count_ec (push) Successful in 36s
    Test / test_change_pg_count (push) Successful in 40s
    Test / test_create_nomaxid (push) Successful in 10s
    Test / test_etcd_fail (push) Successful in 1m1s
    Test / test_add_osd (push) Successful in 2m46s
    Test / test_interrupted_rebalance_imm (push) Successful in 1m50s
    Test / test_interrupted_rebalance (push) Successful in 1m58s
    Test / test_failure_domain (push) Successful in 42s
    Test / test_snapshot (push) Successful in 57s
    Test / test_interrupted_rebalance_ec (push) Successful in 1m56s
    Test / test_snapshot_ec (push) Successful in 25s
    Test / test_minsize_1 (push) Successful in 17s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m24s
    Test / test_rm (push) Successful in 17s
    Test / test_move_reappear (push) Successful in 24s
    Test / test_snapshot_down (push) Successful in 31s
    Test / test_snapshot_down_ec (push) Successful in 30s
    Test / test_splitbrain (push) Successful in 29s
    Test / test_snapshot_chain (push) Successful in 2m38s
    Test / test_snapshot_chain_ec (push) Successful in 3m13s
    Test / test_rebalance_verify_imm (push) Successful in 4m39s
    Test / test_root_node (push) Successful in 15s
    Test / test_rebalance_verify (push) Successful in 5m36s
    Test / test_switch_primary (push) Successful in 41s
    Test / test_write (push) Successful in 44s
    Test / test_rebalance_verify_ec_imm (push) Successful in 4m4s
    Test / test_write_no_same (push) Successful in 22s
    Test / test_write_xor (push) Successful in 1m7s
    Test / test_rebalance_verify_ec (push) Successful in 7m23s
    Test / test_heal_pg_size_2 (push) Successful in 4m10s
    Test / test_heal_csum_32k_dmj (push) Successful in 4m46s
    Test / test_heal_csum_4k_dmj (push) Successful in 5m5s
    Test / test_heal_csum_32k_dj (push) Successful in 8m24s
    Test / test_osd_tags (push) Successful in 23s
    Test / test_enospc (push) Successful in 1m27s
    Test / test_enospc_xor (push) Successful in 1m59s
    Test / test_heal_csum_4k (push) Successful in 4m33s
    Test / test_enospc_imm (push) Successful in 58s
    Test / test_scrub (push) Successful in 44s
    Test / test_enospc_imm_xor (push) Successful in 1m11s
    Test / test_scrub_zero_osd_2 (push) Successful in 25s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 43s
    Test / test_scrub_pg_size_3 (push) Successful in 53s
    Test / test_nfs (push) Successful in 20s
    Test / test_scrub_ec (push) Successful in 27s
    Test / test_heal_csum_32k (push) Successful in 4m3s
    Test / test_scrub_xor (push) Successful in 38s
    Test / test_heal_csum_4k_dj (push) Successful in 3m23s
    Test / test_heal_ec (push) Successful in 3m46s
    Stable

    vitalif released this 2024-07-16 00:07:03 +03:00 | 1346 commits to master since this release

    Some stupid hotfixes for 1.7.0 :)

    • Fix NFS mount
    • Fix modify-osd
    • Fix use_antietcd not taken from /etc
    Downloads
  • v1.7.0 989d73f874

    Release 1.7.0
    Some checks failed
    Test / buildenv (push) Successful in 14s
    Test / build (push) Successful in 3m52s
    Test / npm_lint (push) Successful in 13s
    Test / test_cas (push) Successful in 14s
    Test / make_test (push) Successful in 41s
    Test / test_change_pg_size (push) Successful in 11s
    Test / test_change_pg_count (push) Successful in 40s
    Test / test_change_pg_count_ec (push) Successful in 40s
    Test / test_create_nomaxid (push) Successful in 10s
    Test / test_etcd_fail (push) Successful in 56s
    Test / test_add_osd (push) Successful in 2m52s
    Test / test_interrupted_rebalance_imm (push) Successful in 2m1s
    Test / test_interrupted_rebalance (push) Successful in 2m41s
    Test / test_failure_domain (push) Successful in 46s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m5s
    Test / test_snapshot (push) Successful in 23s
    Test / test_minsize_1 (push) Successful in 18s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m24s
    Test / test_snapshot_ec (push) Successful in 31s
    Test / test_move_reappear (push) Successful in 21s
    Test / test_rm (push) Successful in 18s
    Test / test_snapshot_down (push) Successful in 27s
    Test / test_snapshot_down_ec (push) Successful in 32s
    Test / test_splitbrain (push) Successful in 35s
    Test / test_snapshot_chain (push) Successful in 2m23s
    Test / test_snapshot_chain_ec (push) Successful in 3m12s
    Test / test_rebalance_verify_imm (push) Successful in 6m5s
    Test / test_root_node (push) Successful in 15s
    Test / test_rebalance_verify (push) Successful in 6m45s
    Test / test_switch_primary (push) Successful in 36s
    Test / test_write (push) Successful in 42s
    Test / test_rebalance_verify_ec_imm (push) Successful in 5m6s
    Test / test_write_no_same (push) Successful in 24s
    Test / test_rebalance_verify_ec (push) Successful in 7m26s
    Test / test_write_xor (push) Successful in 1m56s
    Test / test_heal_pg_size_2 (push) Successful in 4m13s
    Test / test_heal_ec (push) Successful in 4m39s
    Test / test_heal_csum_32k_dmj (push) Successful in 5m49s
    Test / test_heal_csum_32k_dj (push) Successful in 5m47s
    Test / test_heal_csum_32k (push) Successful in 6m35s
    Test / test_osd_tags (push) Successful in 25s
    Test / test_enospc (push) Successful in 1m52s
    Test / test_heal_csum_4k_dj (push) Successful in 6m9s
    Test / test_enospc_imm (push) Successful in 43s
    Test / test_enospc_xor (push) Successful in 1m4s
    Test / test_scrub (push) Successful in 45s
    Test / test_enospc_imm_xor (push) Successful in 1m10s
    Test / test_scrub_zero_osd_2 (push) Successful in 27s
    Test / test_scrub_xor (push) Successful in 34s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 42s
    Test / test_scrub_pg_size_3 (push) Successful in 57s
    Test / test_scrub_ec (push) Successful in 27s
    Test / test_heal_csum_4k (push) Successful in 9m58s
    Test / test_heal_csum_4k_dmj (push) Successful in 3m33s
    Test / test_nfs (push) Failing after 2m17s
    Stable

    vitalif released this 2024-07-15 11:48:35 +03:00 | 1353 commits to master since this release

    Omnidirectional release

    New features:

    Changes:

    • Make immediate_commit=all the default everywhere to match default vitastor-disk behaviour
    • Make pool-create error message more obvious and add details to it
    • Set default etcd_ws_keepalive_interval to 5 seconds (speedup client etcd failover)
    • Support OpenStack 2023.2 in Nova and Cinder drivers/patches
    • Add patches for libvirt 10.x
    • Add patches for QEMU 8.2 and 9.0
    • Implement internal restart / run_forever in monitor
    • Some source tree refactoring - sources are now moved into subdirectories, monitor is now split into multiple files
    • Add vitastor_c_inode_get_immediate_commit in vitastor_c client library
    • Make vitastor_kv.h header public

    Bug fixes:

    • Fix total statistics usec/count/bytes not being reported when delta (bps/iops/lat) is zero
    • Prevent infinite loop in NFS on files with incorrect metadata pointing to an empty volume
    • Fix READDIR offsets (cookies) in VitastorFS sometimes leading to client infinite loops when reading a directory
    • Fix a rare infinite loop during OSD journal flushing (OSD hanging and eating 100 % CPU)
    • Fix several bugs which could lead to lost writes in setups without immediate_commit:
      • Client library treated writes as completed before actually completing them, thus missing them in a subsequent fsync
      • Client library didn't repeat writes on the new PG primary when it changed
      • OSDs didn't drop peer connections with dirty writes when stopping PG
    • Fix Block Pseudo-FS initialization leading to ENOENTs some time after start
    • Fix vitastor-cli merge-based commands (merge/flatten/rm snapshot) slowing down and finally failing when using CAS optimistic locks
    • Fix pool create/modify --block_size validation
    • Fix TTL comparison for determining failed lease/keepalive requests in OSD
    • Add support for size suffixes in pool-create --block_size and --immediate_commit values
    Downloads
  • v1.6.1 9301c857b1

    Release 1.6.1
    All checks were successful
    Test / buildenv (push) Successful in 11s
    Test / build (push) Successful in 3m20s
    Test / npm_lint (push) Successful in 9s
    Test / test_cas (push) Successful in 10s
    Test / make_test (push) Successful in 37s
    Test / test_change_pg_size (push) Successful in 9s
    Test / test_change_pg_count_ec (push) Successful in 31s
    Test / test_change_pg_count (push) Successful in 37s
    Test / test_create_nomaxid (push) Successful in 8s
    Test / test_etcd_fail (push) Successful in 59s
    Test / test_add_osd (push) Successful in 2m43s
    Test / test_interrupted_rebalance_imm (push) Successful in 1m56s
    Test / test_failure_domain (push) Successful in 40s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m0s
    Test / test_interrupted_rebalance (push) Successful in 2m58s
    Test / test_snapshot (push) Successful in 23s
    Test / test_minsize_1 (push) Successful in 15s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m22s
    Test / test_move_reappear (push) Successful in 21s
    Test / test_snapshot_ec (push) Successful in 30s
    Test / test_rm (push) Successful in 15s
    Test / test_snapshot_down (push) Successful in 28s
    Test / test_snapshot_down_ec (push) Successful in 29s
    Test / test_splitbrain (push) Successful in 24s
    Test / test_snapshot_chain (push) Successful in 2m25s
    Test / test_snapshot_chain_ec (push) Successful in 2m59s
    Test / test_rebalance_verify_imm (push) Successful in 3m16s
    Test / test_root_node (push) Successful in 10s
    Test / test_rebalance_verify (push) Successful in 3m50s
    Test / test_switch_primary (push) Successful in 37s
    Test / test_write (push) Successful in 39s
    Test / test_write_no_same (push) Successful in 13s
    Test / test_write_xor (push) Successful in 1m20s
    Test / test_rebalance_verify_ec (push) Successful in 4m20s
    Test / test_rebalance_verify_ec_imm (push) Successful in 3m54s
    Test / test_heal_pg_size_2 (push) Successful in 3m25s
    Test / test_heal_csum_32k_dmj (push) Successful in 5m52s
    Test / test_heal_ec (push) Successful in 6m12s
    Test / test_heal_csum_32k_dj (push) Successful in 5m40s
    Test / test_heal_csum_32k (push) Successful in 6m21s
    Test / test_osd_tags (push) Successful in 21s
    Test / test_enospc (push) Successful in 2m25s
    Test / test_heal_csum_4k_dmj (push) Successful in 6m5s
    Test / test_heal_csum_4k_dj (push) Successful in 6m3s
    Test / test_heal_csum_4k (push) Successful in 6m1s
    Test / test_scrub (push) Successful in 43s
    Test / test_enospc_imm (push) Successful in 47s
    Test / test_enospc_xor (push) Successful in 1m38s
    Test / test_enospc_imm_xor (push) Successful in 1m0s
    Test / test_scrub_zero_osd_2 (push) Successful in 26s
    Test / test_scrub_xor (push) Successful in 36s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 33s
    Test / test_scrub_ec (push) Successful in 26s
    Test / test_scrub_pg_size_3 (push) Successful in 47s
    Test / test_nfs (push) Successful in 16s
    Stable

    vitalif released this 2024-04-22 02:01:29 +03:00 | 1426 commits to master since this release

    A bunch of monitor fixes

    • Add noout flag for OSDs (/vitastor/config/osd/xx)
    • Fix "effective" size of degraded PGs (and thus "used space") calculation in monitor
    • Fix monitor not clearing PGs of deleted pools
    • Fix incorrect PG generation with hosts with 0 OSDs
    • Fix monitor crashing during primary OSD recheck when pool has no PGs
    • Fix monitor crashing when node_placement included non-existing OSDs
    • Fix possible data movement after removing OSDs reweighted to 0
    • Remove extra empty keys from pool configurations created by vitastor-cli create-pool
    • Fix 32-bit build
    Downloads
  • v1.6.0 ff4414d37e

    Release 1.6.0
    All checks were successful
    Test / buildenv (push) Successful in 11s
    Test / build (push) Successful in 3m17s
    Test / test_cas (push) Successful in 11s
    Test / make_test (push) Successful in 37s
    Test / test_change_pg_count (push) Successful in 36s
    Test / test_change_pg_size (push) Successful in 8s
    Test / test_change_pg_count_ec (push) Successful in 33s
    Test / test_create_nomaxid (push) Successful in 7s
    Test / test_etcd_fail (push) Successful in 53s
    Test / test_add_osd (push) Successful in 2m38s
    Test / test_interrupted_rebalance (push) Successful in 2m56s
    Test / test_failure_domain (push) Successful in 11s
    Test / test_interrupted_rebalance_imm (push) Successful in 3m6s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m37s
    Test / test_snapshot_ec (push) Successful in 36s
    Test / test_snapshot (push) Successful in 38s
    Test / test_minsize_1 (push) Successful in 19s
    Test / test_rm (push) Successful in 16s
    Test / test_move_reappear (push) Successful in 22s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 2m27s
    Test / test_snapshot_down (push) Successful in 24s
    Test / test_snapshot_down_ec (push) Successful in 25s
    Test / test_splitbrain (push) Successful in 18s
    Test / test_snapshot_chain (push) Successful in 2m31s
    Test / test_snapshot_chain_ec (push) Successful in 3m1s
    Test / test_rebalance_verify_imm (push) Successful in 3m25s
    Test / test_root_node (push) Successful in 8s
    Test / test_rebalance_verify (push) Successful in 4m4s
    Test / test_switch_primary (push) Successful in 34s
    Test / test_write (push) Successful in 54s
    Test / test_write_xor (push) Successful in 52s
    Test / test_write_no_same (push) Successful in 13s
    Test / test_rebalance_verify_ec (push) Successful in 4m13s
    Test / test_rebalance_verify_ec_imm (push) Successful in 4m9s
    Test / test_heal_pg_size_2 (push) Successful in 4m30s
    Test / test_heal_ec (push) Successful in 5m16s
    Test / test_heal_csum_32k_dmj (push) Successful in 6m21s
    Test / test_heal_csum_32k_dj (push) Successful in 5m40s
    Test / test_heal_csum_32k (push) Successful in 6m42s
    Test / test_osd_tags (push) Successful in 39s
    Test / test_heal_csum_4k_dmj (push) Successful in 6m35s
    Test / test_enospc (push) Successful in 1m43s
    Test / test_heal_csum_4k (push) Successful in 6m27s
    Test / test_heal_csum_4k_dj (push) Successful in 6m31s
    Test / test_enospc_xor (push) Successful in 1m42s
    Test / test_scrub_zero_osd_2 (push) Successful in 39s
    Test / test_scrub (push) Successful in 41s
    Test / test_enospc_imm (push) Successful in 46s
    Test / test_enospc_imm_xor (push) Successful in 52s
    Test / test_scrub_xor (push) Successful in 32s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 39s
    Test / test_scrub_ec (push) Successful in 34s
    Test / test_nfs (push) Successful in 16s
    Test / test_scrub_pg_size_3 (push) Successful in 46s
    Stable

    vitalif released this 2024-04-09 16:57:59 +03:00 | 1439 commits to master since this release

    New features:

    • Implement "hierarchical failure domains" and other complex distribution rules, for example
      EC 4+2 over 3 DC, with 2 chunks per each DC (documentation)
    • Make OSDs handle ENOSPC - now cluster stays online even if some OSDs fill up
      to 100 %, only writes requiring free space hang
    • Implement Stage/Unstage & volume locking for CSI to prevent parallel mounting
      and/or modifications of the same volume
    • Warn about full and almost full OSDs in vitastor-cli status
    • Add an experimental NBD netlink map mode as an option (documentation)
    • Add --pg parameter to vitastor-cli describe, print objects with 0x in human-readable format too
    • Add administration docs

    Bug fixes:

    • Fix client operation retry timeout - previously the timeout wasn't applied and writes were
      retries almost instantly
    • Fix monitors crashing on invalid pool configurations
    • Fix journaling - make each journal write wait for all previous journal writes
    • Fix monitor thinking that OSD weight is 0 after deleting /osd/config/ key online
    • Fix a write stall caused by flusher possibly not trimming journal on rollback
    • Set 32k csum_block_size for HDD by default in vitastor-disk
    Downloads
  • v1.5.0 9ad6822353

    Release 1.5.0
    All checks were successful
    Test / buildenv (push) Successful in 18s
    Test / build (push) Successful in 5m3s
    Test / test_cas (push) Successful in 9s
    Test / make_test (push) Successful in 38s
    Test / test_change_pg_count (push) Successful in 36s
    Test / test_change_pg_size (push) Successful in 9s
    Test / test_change_pg_count_ec (push) Successful in 35s
    Test / test_create_nomaxid (push) Successful in 7s
    Test / test_etcd_fail (push) Successful in 1m23s
    Test / test_interrupted_rebalance_imm (push) Successful in 1m56s
    Test / test_add_osd (push) Successful in 2m46s
    Test / test_failure_domain (push) Successful in 39s
    Test / test_interrupted_rebalance (push) Successful in 2m50s
    Test / test_interrupted_rebalance_ec (push) Successful in 1m38s
    Test / test_snapshot (push) Successful in 21s
    Test / test_minsize_1 (push) Successful in 15s
    Test / test_snapshot_ec (push) Successful in 27s
    Test / test_move_reappear (push) Successful in 22s
    Test / test_rm (push) Successful in 14s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m36s
    Test / test_snapshot_down (push) Successful in 31s
    Test / test_snapshot_down_ec (push) Successful in 30s
    Test / test_splitbrain (push) Successful in 24s
    Test / test_snapshot_chain (push) Successful in 2m20s
    Test / test_snapshot_chain_ec (push) Successful in 3m5s
    Test / test_rebalance_verify_imm (push) Successful in 5m11s
    Test / test_rebalance_verify (push) Successful in 5m55s
    Test / test_switch_primary (push) Successful in 33s
    Test / test_rebalance_verify_ec_imm (push) Successful in 4m26s
    Test / test_write (push) Successful in 54s
    Test / test_write_xor (push) Successful in 57s
    Test / test_write_no_same (push) Successful in 19s
    Test / test_rebalance_verify_ec (push) Successful in 7m21s
    Test / test_heal_pg_size_2 (push) Successful in 4m36s
    Test / test_heal_csum_32k_dmj (push) Successful in 4m33s
    Test / test_heal_ec (push) Successful in 6m15s
    Test / test_heal_csum_32k_dj (push) Successful in 6m31s
    Test / test_heal_csum_32k (push) Successful in 6m29s
    Test / test_heal_csum_4k_dmj (push) Successful in 6m15s
    Test / test_scrub_zero_osd_2 (push) Successful in 1m16s
    Test / test_scrub (push) Successful in 1m18s
    Test / test_scrub_xor (push) Successful in 1m13s
    Test / test_heal_csum_4k_dj (push) Successful in 7m10s
    Test / test_scrub_ec (push) Successful in 56s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 59s
    Test / test_heal_csum_4k (push) Successful in 6m2s
    Test / test_scrub_pg_size_3 (push) Successful in 2m11s
    Test / test_nfs (push) Successful in 11s
    Stable

    vitalif released this 2024-03-16 15:35:10 +03:00 | 1468 commits to master since this release

    After half a year of hard work, VitastorFS is finally here ! :-)

    New features:

    • VitastorFS, a full-featured clustered (read-write-many) file system. Documentation: VitastorFS
    • Embedded key-value database implementation based on Parallel Optimistic B-Tree algorithm and used for the metadata of VitastorFS
    • Pool management commands in vitastor-cli (create-pool, list-pools, rm-pool, modify-pool). Thanks MIND Software (https://mindsw.io) for their contribution! Documentation

    Bug fixes:

    • Fix a very rare "infinite loop" in the client library
    • Fix a rare OSD hang on during start when zeroing out bad metadata entries left from the previous run
    Downloads
  • v1.4.8 38b8963330

    Release 1.4.8
    All checks were successful
    Test / buildenv (push) Successful in 13s
    Test / build (push) Successful in 2m41s
    Test / test_cas (push) Successful in 12s
    Test / make_test (push) Successful in 37s
    Test / test_change_pg_count (push) Successful in 39s
    Test / test_change_pg_size (push) Successful in 11s
    Test / test_change_pg_count_ec (push) Successful in 35s
    Test / test_create_nomaxid (push) Successful in 10s
    Test / test_etcd_fail (push) Successful in 58s
    Test / test_add_osd (push) Successful in 2m50s
    Test / test_interrupted_rebalance_imm (push) Successful in 2m24s
    Test / test_failure_domain (push) Successful in 20s
    Test / test_interrupted_rebalance (push) Successful in 2m49s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m0s
    Test / test_minsize_1 (push) Successful in 18s
    Test / test_snapshot (push) Successful in 24s
    Test / test_snapshot_ec (push) Successful in 30s
    Test / test_rm (push) Successful in 19s
    Test / test_move_reappear (push) Successful in 26s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m40s
    Test / test_snapshot_down (push) Successful in 31s
    Test / test_snapshot_down_ec (push) Successful in 34s
    Test / test_splitbrain (push) Successful in 27s
    Test / test_snapshot_chain (push) Successful in 2m18s
    Test / test_snapshot_chain_ec (push) Successful in 2m59s
    Test / test_rebalance_verify_imm (push) Successful in 5m32s
    Test / test_rebalance_verify (push) Successful in 6m11s
    Test / test_switch_primary (push) Successful in 41s
    Test / test_write (push) Successful in 45s
    Test / test_write_no_same (push) Successful in 23s
    Test / test_rebalance_verify_ec_imm (push) Successful in 5m2s
    Test / test_write_xor (push) Successful in 55s
    Test / test_rebalance_verify_ec (push) Successful in 6m22s
    Test / test_heal_pg_size_2 (push) Successful in 5m41s
    Test / test_heal_csum_32k_dmj (push) Successful in 5m59s
    Test / test_heal_csum_32k_dj (push) Successful in 7m19s
    Test / test_heal_csum_32k (push) Successful in 7m17s
    Test / test_heal_csum_4k_dmj (push) Successful in 7m14s
    Test / test_scrub (push) Successful in 1m12s
    Test / test_heal_ec (push) Successful in 9m2s
    Test / test_scrub_xor (push) Successful in 56s
    Test / test_scrub_zero_osd_2 (push) Successful in 1m8s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 2m1s
    Test / test_heal_csum_4k_dj (push) Successful in 4m45s
    Test / test_scrub_pg_size_3 (push) Successful in 2m31s
    Test / test_heal_csum_4k (push) Successful in 4m54s
    Test / test_scrub_ec (push) Successful in 46s
    Stable

    vitalif released this 2024-02-29 09:58:34 +03:00 | 1555 commits to master since this release

    • Do not use \r if output is not a terminal (should fix unexpected job output in proxmox)
    • Fix rm/rm-data error return code, add --down-ok option to bypass the error
    • Add EIO retry timeout and allow to disable these retries, rename up_wait_retry_interval to client_retry_interval
    • Add ubuntu jammy build
    • Wait for blockstore initialisation before starting OSD (prevent timeouts when init takes time)
    • Fix a rare use-after-free in automatic sync after delete in blockstore
    Downloads
  • v1.4.7 5e934264cf

    Release 1.4.7 Stable

    vitalif released this 2024-02-22 12:45:52 +03:00 | 1562 commits to master since this release

    • Fix another old "BUG: Attempt to overwrite used offset" in a very simple
      case: bs=4k rw=write iodepth=16 from OSD start; add this case to tests
    • Fix a rare crash with "unexpected state during flush: 0x51" possible with
      EC since 1.4.2 during rebalance and OSD outages
    • Fix a rare write stall with EC & immediate_commit=none caused by sync
      operations reserving unneeded space in the journal
    • Fix 32-bit build warnings, most in printf/scanf format strings
    Downloads
  • v1.4.6 f87964861d

    Release 1.4.6
    All checks were successful
    Test / buildenv (push) Successful in 21s
    Test / build (push) Successful in 2m43s
    Test / test_cas (push) Successful in 12s
    Test / make_test (push) Successful in 37s
    Test / test_change_pg_count (push) Successful in 37s
    Test / test_change_pg_size (push) Successful in 11s
    Test / test_change_pg_count_ec (push) Successful in 35s
    Test / test_create_nomaxid (push) Successful in 10s
    Test / test_etcd_fail (push) Successful in 53s
    Test / test_add_osd (push) Successful in 2m48s
    Test / test_interrupted_rebalance_imm (push) Successful in 2m52s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m8s
    Test / test_interrupted_rebalance (push) Successful in 3m1s
    Test / test_failure_domain (push) Successful in 10s
    Test / test_minsize_1 (push) Successful in 17s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m25s
    Test / test_snapshot (push) Successful in 28s
    Test / test_snapshot_ec (push) Successful in 29s
    Test / test_rm (push) Successful in 18s
    Test / test_move_reappear (push) Successful in 26s
    Test / test_snapshot_down (push) Successful in 28s
    Test / test_snapshot_down_ec (push) Successful in 32s
    Test / test_splitbrain (push) Successful in 23s
    Test / test_snapshot_chain (push) Successful in 2m3s
    Test / test_snapshot_chain_ec (push) Successful in 2m46s
    Test / test_rebalance_verify_imm (push) Successful in 3m1s
    Test / test_rebalance_verify (push) Successful in 3m30s
    Test / test_switch_primary (push) Successful in 38s
    Test / test_write (push) Successful in 32s
    Test / test_write_no_same (push) Successful in 17s
    Test / test_write_xor (push) Successful in 38s
    Test / test_rebalance_verify_ec (push) Successful in 4m38s
    Test / test_rebalance_verify_ec_imm (push) Successful in 3m57s
    Test / test_heal_csum_32k_dj (push) Successful in 5m14s
    Test / test_heal_csum_32k_dmj (push) Successful in 5m21s
    Test / test_heal_csum_32k (push) Successful in 5m45s
    Test / test_heal_csum_4k_dmj (push) Successful in 5m27s
    Test / test_scrub (push) Successful in 1m30s
    Test / test_heal_csum_4k_dj (push) Successful in 5m26s
    Test / test_scrub_zero_osd_2 (push) Successful in 38s
    Test / test_scrub_xor (push) Successful in 40s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m8s
    Test / test_scrub_ec (push) Successful in 1m5s
    Test / test_scrub_pg_size_3 (push) Successful in 1m49s
    Test / test_heal_csum_4k (push) Successful in 5m41s
    Test / test_heal_ec (push) Successful in 4m11s
    Test / test_heal_pg_size_2 (push) Successful in 4m22s
    Stable

    vitalif released this 2024-02-20 17:01:26 +03:00 | 1569 commits to master since this release

    Unwavering stabilization of 1.4.x, continued :-)

    • Include the accidentally lost part of 1.4.5 journal trimming fix
    • Fix a possible OSD crash with "BUG: Attempt to overwrite used offset"
      which was probably present for long time, but became apparent after
      fixing flapping tests in CI
    • Fix remaining flapping tests in CI. It was the first time when tests
      actually passed without retries :-)
    Downloads
  • v1.4.5 f882c7dd87

    Release 1.4.5
    All checks were successful
    Test / buildenv (push) Successful in 11s
    Test / build (push) Successful in 2m34s
    Test / test_cas (push) Successful in 14s
    Test / make_test (push) Successful in 38s
    Test / test_change_pg_count (push) Successful in 41s
    Test / test_change_pg_size (push) Successful in 10s
    Test / test_change_pg_count_ec (push) Successful in 33s
    Test / test_create_nomaxid (push) Successful in 8s
    Test / test_etcd_fail (push) Successful in 1m1s
    Test / test_interrupted_rebalance_imm (push) Successful in 1m47s
    Test / test_add_osd (push) Successful in 2m48s
    Test / test_interrupted_rebalance (push) Successful in 1m58s
    Test / test_failure_domain (push) Successful in 37s
    Test / test_interrupted_rebalance_ec (push) Successful in 1m53s
    Test / test_snapshot (push) Successful in 1m1s
    Test / test_snapshot_ec (push) Successful in 28s
    Test / test_minsize_1 (push) Successful in 16s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m23s
    Test / test_rm (push) Successful in 15s
    Test / test_move_reappear (push) Successful in 21s
    Test / test_snapshot_down (push) Successful in 26s
    Test / test_snapshot_down_ec (push) Successful in 30s
    Test / test_splitbrain (push) Successful in 29s
    Test / test_snapshot_chain (push) Successful in 2m17s
    Test / test_snapshot_chain_ec (push) Successful in 3m14s
    Test / test_rebalance_verify_imm (push) Successful in 3m24s
    Test / test_rebalance_verify (push) Successful in 3m59s
    Test / test_switch_primary (push) Successful in 35s
    Test / test_write_xor (push) Successful in 32s
    Test / test_write_no_same (push) Successful in 13s
    Test / test_rebalance_verify_ec (push) Successful in 3m46s
    Test / test_rebalance_verify_ec_imm (push) Successful in 3m13s
    Test / test_heal_pg_size_2 (push) Successful in 3m52s
    Test / test_heal_ec (push) Successful in 5m25s
    Test / test_heal_csum_32k_dj (push) Successful in 4m24s
    Test / test_heal_csum_4k_dmj (push) Successful in 4m23s
    Test / test_heal_csum_4k_dj (push) Successful in 4m17s
    Test / test_scrub (push) Successful in 38s
    Test / test_scrub_zero_osd_2 (push) Successful in 29s
    Test / test_scrub_xor (push) Successful in 30s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 43s
    Test / test_scrub_ec (push) Successful in 32s
    Test / test_scrub_pg_size_3 (push) Successful in 1m46s
    Test / test_heal_csum_4k (push) Successful in 4m4s
    Test / test_write (push) Successful in 1m38s
    Test / test_heal_csum_32k_dmj (push) Successful in 4m5s
    Test / test_heal_csum_32k (push) Successful in 4m15s
    Stable

    vitalif released this 2024-02-16 10:13:33 +03:00 | 1575 commits to master since this release

    • Fix a write stall caused by incorrect journal trimming introduced in 1.4.4 :)
    • Fix PGs sometimes hanging in "starting" state on mass OSD restarts
    • Fix a rare crash with "map::at" during OSD pings
    • Use new defaults for non-capacitor (desktop) SSDs - improves T1Q256 random write from ~6k iops to ~45k iops
    • Make journal_trim_interval configurable
    Downloads
  • v1.4.4 c777a0041a

    Release 1.4.4
    All checks were successful
    Test / buildenv (push) Successful in 12s
    Test / build (push) Successful in 2m47s
    Test / test_cas (push) Successful in 10s
    Test / make_test (push) Successful in 36s
    Test / test_change_pg_count (push) Successful in 39s
    Test / test_change_pg_size (push) Successful in 10s
    Test / test_change_pg_count_ec (push) Successful in 34s
    Test / test_create_nomaxid (push) Successful in 10s
    Test / test_etcd_fail (push) Successful in 1m2s
    Test / test_interrupted_rebalance_imm (push) Successful in 1m54s
    Test / test_add_osd (push) Successful in 2m48s
    Test / test_interrupted_rebalance (push) Successful in 2m1s
    Test / test_failure_domain (push) Successful in 41s
    Test / test_interrupted_rebalance_ec (push) Successful in 2m3s
    Test / test_snapshot_ec (push) Successful in 25s
    Test / test_snapshot (push) Successful in 1m16s
    Test / test_minsize_1 (push) Successful in 18s
    Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m23s
    Test / test_move_reappear (push) Successful in 21s
    Test / test_rm (push) Successful in 16s
    Test / test_snapshot_down (push) Successful in 30s
    Test / test_snapshot_down_ec (push) Successful in 30s
    Test / test_splitbrain (push) Successful in 25s
    Test / test_snapshot_chain (push) Successful in 2m18s
    Test / test_snapshot_chain_ec (push) Successful in 3m13s
    Test / test_rebalance_verify_imm (push) Successful in 3m8s
    Test / test_rebalance_verify (push) Successful in 3m41s
    Test / test_switch_primary (push) Successful in 36s
    Test / test_write (push) Successful in 40s
    Test / test_write_no_same (push) Successful in 16s
    Test / test_write_xor (push) Successful in 39s
    Test / test_rebalance_verify_ec (push) Successful in 4m56s
    Test / test_rebalance_verify_ec_imm (push) Successful in 4m21s
    Test / test_heal_pg_size_2 (push) Successful in 4m15s
    Test / test_heal_ec (push) Successful in 5m1s
    Test / test_heal_csum_32k_dj (push) Successful in 5m32s
    Test / test_heal_csum_32k (push) Successful in 5m38s
    Test / test_heal_csum_4k_dmj (push) Successful in 5m43s
    Test / test_scrub (push) Successful in 1m31s
    Test / test_scrub_zero_osd_2 (push) Successful in 1m17s
    Test / test_heal_csum_4k_dj (push) Successful in 5m57s
    Test / test_scrub_xor (push) Successful in 30s
    Test / test_scrub_pg_size_3 (push) Successful in 1m7s
    Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 41s
    Test / test_scrub_ec (push) Successful in 24s
    Test / test_heal_csum_32k_dmj (push) Successful in 3m56s
    Test / test_heal_csum_4k (push) Successful in 3m16s
    Stable

    vitalif released this 2024-02-11 16:23:08 +03:00 | 1582 commits to master since this release

    A couple of fixes for EC pools

    • Fix a segfault possible on partial EC overwrite in 1234 -> 5030 rebalance scenario
    • Fix two problems leading to EC pools stalling on rebalance & parallel sudden stops
      of OSDs, for example during a sudden poweroff of a host:
      • Recovery auto-tuning (1.4.0 feature) could apply too large delays and stall
        the EC journal - fixed by limiting delays with a new recovery_tune_sleep_cutoff_us
        parameter (10 seconds by default) and applying recovery pauses before write
        operations, not after them, to not occupy space in the journal for long time
      • Dynamic journal space reservation (1.3.0 feature) wasn't accounting new writes
        when checking the limit so OSDs could still fill the journal fully and stall -
        fixed by including new writes into the limit
    • Print etcd dbSize instead of dbSizeInUse in status
    Downloads