17 Commits (0e63ee3617f7e58e6a0d4cf5da299496f43cd6aa)
Author | SHA1 | Message | Date |
---|---|---|---|
Vitaliy Filippov | 0e63ee3617 |
Release 1.6.0
Test / test_snapshot_chain_ec (push) Successful in 3m20s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m47s
Details
Test / test_root_node (push) Successful in 12s
Details
Test / test_rebalance_verify (push) Successful in 3m39s
Details
Test / test_switch_primary (push) Successful in 41s
Details
Test / test_write (push) Successful in 41s
Details
Test / test_write_no_same (push) Successful in 18s
Details
Test / test_write_xor (push) Successful in 1m6s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m7s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m30s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m25s
Details
Test / test_heal_ec (push) Successful in 6m18s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m41s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m38s
Details
Test / test_heal_csum_32k (push) Successful in 6m23s
Details
Test / test_osd_tags (push) Successful in 22s
Details
Test / test_enospc (push) Successful in 2m52s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m16s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m14s
Details
Test / test_heal_csum_4k (push) Successful in 6m12s
Details
Test / test_scrub (push) Successful in 44s
Details
Test / test_enospc_imm (push) Successful in 50s
Details
Test / test_enospc_xor (push) Successful in 57s
Details
Test / test_enospc_imm_xor (push) Successful in 1m8s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 25s
Details
Test / test_scrub_xor (push) Successful in 29s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 30s
Details
Test / test_nfs (push) Successful in 20s
Details
Test / test_scrub_ec (push) Successful in 28s
Details
Test / test_scrub_pg_size_3 (push) Successful in 50s
Details
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](docs/config/pool.en.md#level_placement)) - 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](docs/usage/nbd.en.md)) - Add --pg parameter to vitastor-cli describe, print objects with 0x in human-readable format too - Add [administration docs](docs/usage/admin.en.md) 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 |
|
Vitaliy Filippov | 9ad6822353 |
Release 1.5.0
Test / test_rm (push) Successful in 14s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m36s
Details
Test / test_snapshot_down (push) Successful in 31s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_splitbrain (push) Successful in 24s
Details
Test / test_snapshot_chain (push) Successful in 2m20s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m5s
Details
Test / test_rebalance_verify_imm (push) Successful in 5m11s
Details
Test / test_rebalance_verify (push) Successful in 5m55s
Details
Test / test_switch_primary (push) Successful in 33s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m26s
Details
Test / test_write (push) Successful in 54s
Details
Test / test_write_xor (push) Successful in 57s
Details
Test / test_write_no_same (push) Successful in 19s
Details
Test / test_rebalance_verify_ec (push) Successful in 7m21s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m36s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m33s
Details
Test / test_heal_ec (push) Successful in 6m15s
Details
Test / test_heal_csum_32k_dj (push) Successful in 6m31s
Details
Test / test_heal_csum_32k (push) Successful in 6m29s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m15s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m16s
Details
Test / test_scrub (push) Successful in 1m18s
Details
Test / test_scrub_xor (push) Successful in 1m13s
Details
Test / test_heal_csum_4k_dj (push) Successful in 7m10s
Details
Test / test_scrub_ec (push) Successful in 56s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 59s
Details
Test / test_heal_csum_4k (push) Successful in 6m2s
Details
Test / test_scrub_pg_size_3 (push) Successful in 2m11s
Details
Test / test_nfs (push) Successful in 11s
Details
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](docs/usage/nfs.en.md) - 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](docs/usage/cli.en.md#create-pool) 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 |
|
Vitaliy Filippov | 38b8963330 |
Release 1.4.8
Test / test_rm (push) Successful in 19s
Details
Test / test_move_reappear (push) Successful in 26s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m40s
Details
Test / test_snapshot_down (push) Successful in 31s
Details
Test / test_snapshot_down_ec (push) Successful in 34s
Details
Test / test_splitbrain (push) Successful in 27s
Details
Test / test_snapshot_chain (push) Successful in 2m18s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m59s
Details
Test / test_rebalance_verify_imm (push) Successful in 5m32s
Details
Test / test_rebalance_verify (push) Successful in 6m11s
Details
Test / test_switch_primary (push) Successful in 41s
Details
Test / test_write (push) Successful in 45s
Details
Test / test_write_no_same (push) Successful in 23s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 5m2s
Details
Test / test_write_xor (push) Successful in 55s
Details
Test / test_rebalance_verify_ec (push) Successful in 6m22s
Details
Test / test_heal_pg_size_2 (push) Successful in 5m41s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m59s
Details
Test / test_heal_csum_32k_dj (push) Successful in 7m19s
Details
Test / test_heal_csum_32k (push) Successful in 7m17s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 7m14s
Details
Test / test_scrub (push) Successful in 1m12s
Details
Test / test_heal_ec (push) Successful in 9m2s
Details
Test / test_scrub_xor (push) Successful in 56s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m8s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 2m1s
Details
Test / test_heal_csum_4k_dj (push) Successful in 4m45s
Details
Test / test_scrub_pg_size_3 (push) Successful in 2m31s
Details
Test / test_heal_csum_4k (push) Successful in 4m54s
Details
Test / test_scrub_ec (push) Successful in 46s
Details
- 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 |
|
Vitaliy Filippov | 5e934264cf |
Release 1.4.7
- 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 |
|
Vitaliy Filippov | f87964861d |
Release 1.4.6
Test / test_snapshot_ec (push) Successful in 29s
Details
Test / test_rm (push) Successful in 18s
Details
Test / test_move_reappear (push) Successful in 26s
Details
Test / test_snapshot_down (push) Successful in 28s
Details
Test / test_snapshot_down_ec (push) Successful in 32s
Details
Test / test_splitbrain (push) Successful in 23s
Details
Test / test_snapshot_chain (push) Successful in 2m3s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m46s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m1s
Details
Test / test_rebalance_verify (push) Successful in 3m30s
Details
Test / test_switch_primary (push) Successful in 38s
Details
Test / test_write (push) Successful in 32s
Details
Test / test_write_no_same (push) Successful in 17s
Details
Test / test_write_xor (push) Successful in 38s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m38s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m57s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m14s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m21s
Details
Test / test_heal_csum_32k (push) Successful in 5m45s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m27s
Details
Test / test_scrub (push) Successful in 1m30s
Details
Test / test_heal_csum_4k_dj (push) Successful in 5m26s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 38s
Details
Test / test_scrub_xor (push) Successful in 40s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m8s
Details
Test / test_scrub_ec (push) Successful in 1m5s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m49s
Details
Test / test_heal_csum_4k (push) Successful in 5m41s
Details
Test / test_heal_ec (push) Successful in 4m11s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m22s
Details
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 :-) |
|
Vitaliy Filippov | f882c7dd87 |
Release 1.4.5
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m23s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_move_reappear (push) Successful in 21s
Details
Test / test_snapshot_down (push) Successful in 26s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_splitbrain (push) Successful in 29s
Details
Test / test_snapshot_chain (push) Successful in 2m17s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m14s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m24s
Details
Test / test_rebalance_verify (push) Successful in 3m59s
Details
Test / test_switch_primary (push) Successful in 35s
Details
Test / test_write_xor (push) Successful in 32s
Details
Test / test_write_no_same (push) Successful in 13s
Details
Test / test_rebalance_verify_ec (push) Successful in 3m46s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m13s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m52s
Details
Test / test_heal_ec (push) Successful in 5m25s
Details
Test / test_heal_csum_32k_dj (push) Successful in 4m24s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 4m23s
Details
Test / test_heal_csum_4k_dj (push) Successful in 4m17s
Details
Test / test_scrub (push) Successful in 38s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 29s
Details
Test / test_scrub_xor (push) Successful in 30s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 43s
Details
Test / test_scrub_ec (push) Successful in 32s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m46s
Details
Test / test_heal_csum_4k (push) Successful in 4m4s
Details
Test / test_write (push) Successful in 1m38s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m5s
Details
Test / test_heal_csum_32k (push) Successful in 4m15s
Details
- 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 |
|
Vitaliy Filippov | c777a0041a |
Release 1.4.4
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m23s
Details
Test / test_move_reappear (push) Successful in 21s
Details
Test / test_rm (push) Successful in 16s
Details
Test / test_snapshot_down (push) Successful in 30s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_splitbrain (push) Successful in 25s
Details
Test / test_snapshot_chain (push) Successful in 2m18s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m13s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m8s
Details
Test / test_rebalance_verify (push) Successful in 3m41s
Details
Test / test_switch_primary (push) Successful in 36s
Details
Test / test_write (push) Successful in 40s
Details
Test / test_write_no_same (push) Successful in 16s
Details
Test / test_write_xor (push) Successful in 39s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m56s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m21s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m15s
Details
Test / test_heal_ec (push) Successful in 5m1s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m32s
Details
Test / test_heal_csum_32k (push) Successful in 5m38s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m43s
Details
Test / test_scrub (push) Successful in 1m31s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m17s
Details
Test / test_heal_csum_4k_dj (push) Successful in 5m57s
Details
Test / test_scrub_xor (push) Successful in 30s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m7s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 41s
Details
Test / test_scrub_ec (push) Successful in 24s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 3m56s
Details
Test / test_heal_csum_4k (push) Successful in 3m16s
Details
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 |
|
Vitaliy Filippov | 27e9f244ec |
Release 1.4.3
Test / test_move_reappear (push) Successful in 22s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_snapshot_down (push) Successful in 36s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_interrupted_rebalance (push) Successful in 5m3s
Details
Test / test_splitbrain (push) Successful in 20s
Details
Test / test_snapshot_chain (push) Successful in 3m1s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m13s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m0s
Details
Test / test_rebalance_verify (push) Successful in 3m29s
Details
Test / test_switch_primary (push) Successful in 37s
Details
Test / test_write (push) Successful in 44s
Details
Test / test_write_xor (push) Successful in 39s
Details
Test / test_write_no_same (push) Successful in 16s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m13s
Details
Test / test_rebalance_verify_ec (push) Successful in 5m31s
Details
Test / test_heal_ec (push) Successful in 4m54s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m25s
Details
Test / test_heal_csum_32k (push) Successful in 6m8s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m17s
Details
Test / test_scrub (push) Successful in 1m8s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 55s
Details
Test / test_scrub_xor (push) Successful in 45s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m22s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m11s
Details
Test / test_scrub_ec (push) Successful in 46s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m39s
Details
Test / test_heal_csum_4k (push) Successful in 6m8s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m15s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m41s
Details
Hotfix for hotfix O:-) - "Write stall fix" was incomplete and EC write stalls could continue even on 1.4.2. Now they're finally fixed O:-) - Make monitor ignore statistics of stopped OSDs. Previously if you stopped all OSDs the last total I/O numbers would remain the same indefinitely |
|
Vitaliy Filippov | 016115c0d4 |
Release 1.4.2
Test / test_rm (push) Successful in 16s
Details
Test / test_move_reappear (push) Successful in 20s
Details
Test / test_snapshot_down (push) Successful in 25s
Details
Test / test_snapshot_down_ec (push) Successful in 39s
Details
Test / test_interrupted_rebalance (push) Successful in 4m52s
Details
Test / test_splitbrain (push) Successful in 20s
Details
Test / test_snapshot_chain (push) Successful in 3m11s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m16s
Details
Test / test_rebalance_verify (push) Successful in 3m45s
Details
Test / test_switch_primary (push) Successful in 36s
Details
Test / test_write (push) Successful in 40s
Details
Test / test_write_xor (push) Successful in 40s
Details
Test / test_write_no_same (push) Successful in 17s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m8s
Details
Test / test_rebalance_verify_ec (push) Successful in 5m57s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m22s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m20s
Details
Test / test_heal_ec (push) Successful in 5m54s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m24s
Details
Test / test_heal_csum_32k (push) Successful in 6m3s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m54s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 53s
Details
Test / test_scrub (push) Successful in 55s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m14s
Details
Test / test_scrub_xor (push) Successful in 1m1s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m50s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 57s
Details
Test / test_scrub_ec (push) Successful in 52s
Details
Test / test_heal_csum_4k (push) Successful in 5m47s
Details
Test / test_snapshot_chain_ec (push) Successful in 1m24s
Details
- Log to systemd by default - Fix excessive autosyncs after every operation with disabled immediate_commit (introduced in 1.1.0) - Fix a possible write stall with EC due to the lack of OSD wakeup after stabilizing previous writes - Change sync operation semantics as a final fix to possible write stalls with EC and disabled immediate_commit - Sync after deleting data in CLI rm / rm-data if immediate_commit is disabled - Fix OSDs ignoring syncs & autosyncs for delete operations - Fix OSD space reporting sometimes adding garbage zeros for deleted inodes (causing extra pool/stats etcd keys for deleted pools) - Speed up monitor failover - change default etcd_mon_ttl from 30 to 5 seconds - Speed up operation retries - change default up_wait_retry_interval to 50 ms - Add patch for libvirt 9.10 |
|
Vitaliy Filippov | ba55f91409 |
Release 1.4.1
Test / test_move_reappear (push) Successful in 22s
Details
Test / test_snapshot_chain (push) Successful in 1m27s
Details
Test / test_interrupted_rebalance_ec (push) Successful in 4m41s
Details
Test / test_snapshot_down (push) Successful in 25s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m0s
Details
Test / test_splitbrain (push) Successful in 18s
Details
Test / test_snapshot_down_ec (push) Successful in 25s
Details
Test / test_rebalance_verify_ec (push) Failing after 2m21s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m30s
Details
Test / test_switch_primary (push) Successful in 39s
Details
Test / test_write (push) Successful in 35s
Details
Test / test_interrupted_rebalance (push) Failing after 10m8s
Details
Test / test_write_xor (push) Successful in 36s
Details
Test / test_write_no_same (push) Successful in 17s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m4s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m55s
Details
Test / test_rebalance_verify (push) Successful in 8m31s
Details
Test / test_heal_ec (push) Successful in 5m9s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m27s
Details
Test / test_heal_csum_32k (push) Successful in 5m42s
Details
Test / test_heal_csum_32k_dj (push) Successful in 6m1s
Details
Test / test_scrub (push) Successful in 59s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 38s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 7m5s
Details
Test / test_scrub_xor (push) Successful in 58s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m25s
Details
Test / test_scrub_ec (push) Failing after 42s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m32s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m38s
Details
Test / test_heal_csum_4k (push) Successful in 5m38s
Details
- Fix a monitor crash on primary OSD switching introduced in 1.4.0 - Fix "partly outside array bounds" warnings for GCC 12 in cpp-btree - Fix a realloc memory leak in theory possible with too large listings (OSD_OP_LIST) |
|
Vitaliy Filippov | 5280d1d561 |
Release 1.4.0
Test / test_snapshot (push) Successful in 26s
Details
Test / test_snapshot_ec (push) Successful in 26s
Details
Test / test_rm (push) Successful in 16s
Details
Test / test_move_reappear (push) Successful in 24s
Details
Test / test_snapshot_down (push) Successful in 26s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_splitbrain (push) Successful in 28s
Details
Test / test_snapshot_chain (push) Successful in 2m41s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m48s
Details
Test / test_rebalance_verify (push) Successful in 3m28s
Details
Test / test_write (push) Successful in 47s
Details
Test / test_write_no_same (push) Successful in 14s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m5s
Details
Test / test_rebalance_verify_ec (push) Successful in 3m41s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m45s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m52s
Details
Test / test_heal_ec (push) Successful in 5m11s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m42s
Details
Test / test_heal_csum_32k (push) Successful in 5m56s
Details
Test / test_scrub (push) Successful in 1m25s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m18s
Details
Test / test_scrub_xor (push) Successful in 42s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m49s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m32s
Details
Test / test_heal_csum_4k (push) Successful in 5m31s
Details
Test / test_scrub_ec (push) Successful in 50s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m2s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m5s
Details
Test / test_snapshot_chain_ec (push) Successful in 1m21s
Details
Test / test_write_xor (push) Successful in 36s
Details
New features: - Intelligent recovery/rebalance speed auto-tuning to reduce its impact on clients (see README -> Features) - Auto-restoration of dead VDUSE daemons in CSI plugin - Add vitastor-disk update-sb command - Update QEMU for Debian Bookworm to 8.1 and use it for CSI plugin Bug fixes: - Fix pools SOMETIMES staying inactive after stopping a node due to OSDs not reacting to PG state changes caused by incorrect full reload of state from etcd on reconnection - Make monitors retry pool configuration changes quickier which fixes them being unable to apply changes when an ongoing rebalance is quickly making a lot of PGs clean - Fix CSI plugin not accepting array of strings as etcd address in /etc/vitastor/vitastor.conf - Allow multiple interfaces with the same IP address, for "simple routed" full mesh network - Do not ignore loopback addresses for OSD network (to make ECMP setups with frr possible) - Fix a rare client crash during OSD reconnections - Only treat data partitions as existing OSDs in vitastor-disk prepare - Remove etcd parameter from default command examples - Fix reported free space sometimes changing non-immediately after deletion of data from OSDs - Fix a possible OSD crash on print_slow when bs_op is NULL - Use the same etcd_ws_keepalive_interval in mon as in OSD - Fix mon not using values from config when /config/global is not present - Remove pve-storage-portal-dns-list format for vitastor_etcd_address - Parse log_level in cluster_client - Fix vitastor-nbd image existence check not working because of non-zeroed inode_watch fields - Do not warn on EPIPE in client unless log_level is raised explicitly - Fix incorrect error in CSI when searching for the device in /sys - Remove 2 last prints to stdout in etcd_state_client - Fix a possible OSD crash when checking corrupted journal entries |
|
Vitaliy Filippov | a1c7cc3d8d |
Release 1.3.1
Test / test_interrupted_rebalance_ec (push) Successful in 1m46s
Details
Test / test_move_reappear (push) Successful in 21s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_snapshot_ec (push) Successful in 35s
Details
Test / test_snapshot_down (push) Successful in 30s
Details
Test / test_snapshot_down_ec (push) Successful in 31s
Details
Test / test_splitbrain (push) Successful in 23s
Details
Test / test_snapshot_chain (push) Successful in 2m22s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m59s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m3s
Details
Test / test_rebalance_verify (push) Successful in 3m47s
Details
Test / test_write (push) Successful in 44s
Details
Test / test_write_no_same (push) Successful in 13s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m36s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m20s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m43s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m45s
Details
Test / test_heal_ec (push) Successful in 6m22s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m51s
Details
Test / test_heal_csum_32k (push) Successful in 6m2s
Details
Test / test_scrub (push) Successful in 1m14s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m19s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m54s
Details
Test / test_scrub_xor (push) Successful in 1m1s
Details
Test / test_heal_csum_4k_dj (push) Successful in 5m59s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m54s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m2s
Details
Test / test_scrub_ec (push) Successful in 34s
Details
Test / test_heal_csum_4k (push) Successful in 6m0s
Details
Test / test_write_xor (push) Successful in 32s
Details
Hotfix to 1.3.0 - new "journal space reservation" had a bug which caused OSDs to crash with EC and without immediate_commit. |
|
Vitaliy Filippov | 7972502eaf |
Release 1.3.0
Test / test_rm (push) Successful in 12s
Details
Test / test_snapshot_chain (push) Successful in 1m1s
Details
Test / test_snapshot_down (push) Successful in 19s
Details
Test / test_splitbrain (push) Successful in 12s
Details
Test / test_snapshot_down_ec (push) Failing after 3m10s
Details
Test / test_rebalance_verify (push) Successful in 2m45s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m17s
Details
Test / test_write (push) Successful in 1m11s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 2m41s
Details
Test / test_write_no_same (push) Successful in 12s
Details
Test / test_write_xor (push) Failing after 3m6s
Details
Test / test_rebalance_verify_ec (push) Failing after 5m27s
Details
Test / test_heal_pg_size_2 (push) Failing after 3m7s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m36s
Details
Test / test_heal_csum_32k_dj (push) Failing after 4m53s
Details
Test / test_heal_csum_32k (push) Failing after 5m27s
Details
Test / test_heal_ec (push) Failing after 10m15s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m14s
Details
Test / test_scrub (push) Successful in 1m11s
Details
Test / test_heal_csum_4k_dj (push) Successful in 5m15s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 56s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m4s
Details
Test / test_heal_csum_4k (push) Failing after 5m31s
Details
Test / test_scrub_xor (push) Failing after 3m17s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Failing after 3m6s
Details
Test / test_change_pg_count_ec (push) Failing after 3m5s
Details
Test / test_snapshot_ec (push) Failing after 3m5s
Details
Test / test_scrub_ec (push) Failing after 3m5s
Details
Test / test_snapshot_chain_ec (push) Failing after 3m5s
Details
Test / test_interrupted_rebalance_ec (push) Failing after 10m5s
Details
New features: - RDMA without ODP - much faster and all cards are now supported, not just Mellanox - VDUSE in CSI - faster, more stable and can even recover after CSI pod restart! - Reserve journal space for stabilize requests dynamically to prevent stalls under load with EC - Raise default NBD timeout from 30 to 300 seconds and allow to take it from /etc/vitastor/vitastor.conf - Remove explicit etcdUrl/etcdPrefix K8S storage class parameter support to prevent etcd migration issues for volumes created with these parameters - Support QEMU 8.1 and pve-qemu 8.1 Bug fixes: - Fix RDMA connection (and thus memory) leak - Fix rare crashes under load due to incorrect io_uring queue size tracking - Fix monitor statistics aggregation in case of empty /osd/stats keys - Fix crash on unknown long argument to vitastor-disk - Allow trailing comma in JSONs again - Fix crash on attempts to dump a long listing of objects "to stabilize" or "to rollback" in a slow op |
|
Vitaliy Filippov | 5524dbdab7 |
Release 1.2.0
Test / test_snapshot_ec (push) Successful in 25s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m18s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_snapshot_down (push) Successful in 22s
Details
Test / test_snapshot_down_ec (push) Successful in 23s
Details
Test / test_splitbrain (push) Successful in 18s
Details
Test / test_snapshot_chain (push) Successful in 2m13s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m57s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m51s
Details
Test / test_write (push) Successful in 38s
Details
Test / test_rebalance_verify (push) Successful in 3m39s
Details
Test / test_write_no_same (push) Successful in 12s
Details
Test / test_rebalance_verify_ec (push) Successful in 3m56s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m6s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m43s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m35s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m44s
Details
Test / test_heal_csum_32k (push) Successful in 5m50s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 5m44s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 57s
Details
Test / test_scrub (push) Successful in 1m0s
Details
Test / test_scrub_xor (push) Successful in 1m5s
Details
Test / test_heal_csum_4k_dj (push) Successful in 5m9s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m38s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 54s
Details
Test / test_scrub_ec (push) Successful in 52s
Details
Test / test_heal_csum_4k (push) Successful in 5m8s
Details
Test / test_heal_ec (push) Successful in 3m17s
Details
Test / test_write_xor (push) Successful in 35s
Details
Test / test_move_reappear (push) Failing after 48s
Details
New features: - Implement CSI volume expansion - Implement CSI volume snapshots - CSI driver now requires Kubernetes >= 1.20 Bug fixes: - Important bug fix for EC: fix EC n+k, k>=2 read recovery in ISA-L version returning incorrect data when reading at least the second chunk out of multiple missing chunks without reading the first one. All users of EC n+k, k>=2 should upgrade as soon as possible, and upgrade should be conducted with downtime: first stop all clients (VMs/containers), then all OSDs, then upgrade and restart everything. - Fix unstable statistics aggregation in monitor (affecting vitastor-cli status and df) - Make udev not wait for OSDs to start during boot - Do not report negative numbers of offline PGs in vitastor-cli status when changing PG count - Report both old and new PG counts in vitastor-cli df when changing it - Fix OSDs sometimes not starting with "The code only supports journal versions 1 and 2, but it is 2 on disk" error after upgrading from pre-1.0 versions and letting OSDs run for some time - Fix monitors sometimes returning old PG count back after OSD configuration changes - Make monitor PG changes more stable and timeout errors less probable |
|
Vitaliy Filippov | 8222e3c77d |
Release 1.1.0
Test / test_interrupted_rebalance_ec (push) Successful in 1m49s
Details
Test / test_snapshot_ec (push) Successful in 38s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_snapshot_down (push) Successful in 23s
Details
Test / test_move_reappear (push) Failing after 49s
Details
Test / test_snapshot_down_ec (push) Successful in 23s
Details
Test / test_splitbrain (push) Successful in 22s
Details
Test / test_snapshot_chain (push) Successful in 2m25s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m5s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m51s
Details
Test / test_write (push) Successful in 34s
Details
Test / test_rebalance_verify (push) Successful in 3m38s
Details
Test / test_write_no_same (push) Successful in 14s
Details
Test / test_write_xor (push) Successful in 50s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m3s
Details
Test / test_rebalance_verify_ec (push) Successful in 5m0s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m2s
Details
Test / test_heal_ec (push) Successful in 4m49s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m27s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m44s
Details
Test / test_heal_csum_32k (push) Successful in 6m57s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m50s
Details
Test / test_scrub (push) Successful in 1m12s
Details
Test / test_scrub_xor (push) Successful in 48s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 54s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m14s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m32s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m38s
Details
Test / test_heal_csum_4k (push) Successful in 6m20s
Details
Test / test_scrub_ec (push) Successful in 27s
Details
New features: - Implement [client writeback cache](docs/config/client.en.md#client_enable_writeback) - Add the third I/O mode: [O_DIRECT|O_SYNC](docs/config/osd.en.md#data_io) (good for Optane) - Reduce load on etcd by splitting OSD lease and statistics reporting intervals: [etcd_stats_interval](docs/config/osd.en.md#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](docs/usage/qemu.en.md#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 |
|
Vitaliy Filippov | 2fdd8a1b38 | More correct failure model (I hope so) | |
Vitaliy Filippov | 9b4e5b64ae | Move monitor to mon/ |