Commit Graph

5 Commits (7972502eafb8f043f84d9d6b46a86a6d59ab74d9)

Author SHA1 Message Date
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
2023-12-04 02:36:43 +03:00
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
2023-11-05 01:48:57 +03:00
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
2023-10-28 00:33:06 +03:00
Vitaliy Filippov 2fdd8a1b38 More correct failure model (I hope so) 2020-10-01 02:33:48 +03:00
Vitaliy Filippov 9b4e5b64ae Move monitor to mon/ 2020-09-16 02:15:26 +03:00