Vitaliy Filippov
b7a3275af3
Make netlink optional
2024-04-08 01:51:28 +03:00
Vitaliy Filippov
64c5c4ca26
Fix code style
2024-04-08 01:35:03 +03:00
idelson
442a9d838d
nbd-proxy: add configuration via netlink to support kinds of timeouts.
...
PR #58 - https://github.com/vitalif/vitastor/pull/58/commits
By MIND Software LLC
By submitting this pull request, I accept Vitastor CLA
2024-04-08 00:50:08 +03:00
Vitaliy Filippov
6366972fe8
Warn about full and almost full OSDs in status
Test / test_splitbrain (push) Successful in 18s
Details
Test / test_snapshot_chain (push) Successful in 2m23s
Details
Test / test_snapshot_chain_ec (push) Successful in 2m53s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m21s
Details
Test / test_rebalance_verify (push) Successful in 3m46s
Details
Test / test_switch_primary (push) Successful in 33s
Details
Test / test_write (push) Successful in 54s
Details
Test / test_write_xor (push) Successful in 48s
Details
Test / test_write_no_same (push) Successful in 14s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m38s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m22s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m34s
Details
Test / test_heal_ec (push) Successful in 3m38s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m44s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m51s
Details
Test / test_heal_csum_32k (push) Successful in 6m45s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m34s
Details
Test / test_enospc (push) Successful in 1m47s
Details
Test / test_enospc_xor (push) Successful in 2m41s
Details
Test / test_enospc_imm (push) Successful in 1m31s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m39s
Details
Test / test_heal_csum_4k (push) Successful in 6m15s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 32s
Details
Test / test_scrub (push) Successful in 35s
Details
Test / test_scrub_xor (push) Successful in 26s
Details
Test / test_enospc_imm_xor (push) Successful in 1m13s
Details
Test / test_nfs (push) Successful in 24s
Details
Test / test_scrub_ec (push) Successful in 33s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 34s
Details
Test / test_scrub_pg_size_3 (push) Successful in 42s
Details
2024-04-07 19:39:51 +03:00
Vitaliy Filippov
2b863fb715
Add ENOSPC handling tests
2024-04-07 19:39:33 +03:00
Vitaliy Filippov
3bf4dd5abd
Fix client op retry timeout - do not retry immediately
2024-04-07 19:08:36 +03:00
Vitaliy Filippov
3b84dcaedd
Handle ENOSPC during write - rollback partial EC writes, remember partial replica writes
Test / test_rm (push) Successful in 14s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 1m59s
Details
Test / test_snapshot_down (push) Successful in 28s
Details
Test / test_snapshot_down_ec (push) Successful in 30s
Details
Test / test_splitbrain (push) Successful in 27s
Details
Test / test_snapshot_chain (push) Successful in 2m41s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m12s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m33s
Details
Test / test_rebalance_verify (push) Successful in 4m24s
Details
Test / test_switch_primary (push) Successful in 34s
Details
Test / test_write (push) Successful in 53s
Details
Test / test_write_xor (push) Successful in 51s
Details
Test / test_write_no_same (push) Successful in 11s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m11s
Details
Test / test_rebalance_verify_ec (push) Successful in 6m3s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m57s
Details
Test / test_heal_ec (push) Successful in 4m52s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m37s
Details
Test / test_heal_csum_32k_dj (push) Successful in 6m55s
Details
Test / test_heal_csum_32k (push) Successful in 6m42s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m41s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m45s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 44s
Details
Test / test_scrub (push) Successful in 48s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m6s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m30s
Details
Test / test_scrub_ec (push) Successful in 51s
Details
Test / test_nfs (push) Successful in 39s
Details
Test / test_heal_csum_4k (push) Successful in 5m22s
Details
Test / test_scrub_xor (push) Successful in 18s
Details
2024-04-07 18:02:05 +03:00
Vitaliy Filippov
20fbc4a745
Add --pg parameter to vitastor-cli describe, print objects with 0x in human-readable format too
Test / test_rm (push) Successful in 16s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 2m4s
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 18s
Details
Test / test_snapshot_chain (push) Successful in 2m32s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m11s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m34s
Details
Test / test_rebalance_verify (push) Successful in 4m12s
Details
Test / test_switch_primary (push) Successful in 33s
Details
Test / test_write (push) Successful in 52s
Details
Test / test_write_xor (push) Successful in 54s
Details
Test / test_write_no_same (push) Successful in 13s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m6s
Details
Test / test_rebalance_verify_ec (push) Successful in 5m1s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m15s
Details
Test / test_heal_ec (push) Successful in 4m11s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 6m4s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m59s
Details
Test / test_heal_csum_32k (push) Successful in 6m42s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m40s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 55s
Details
Test / test_scrub (push) Successful in 58s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m22s
Details
Test / test_heal_csum_4k (push) Successful in 6m24s
Details
Test / test_scrub_pg_size_3 (push) Successful in 2m11s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 25s
Details
Test / test_scrub_ec (push) Successful in 23s
Details
Test / test_nfs (push) Successful in 13s
Details
Test / test_scrub_xor (push) Successful in 18s
Details
2024-04-07 12:39:46 +03:00
Vitaliy Filippov
3629dbc54d
Plug the new PG combinator into monitor
Test / test_move_reappear (push) Successful in 22s
Details
Test / test_snapshot_down (push) Successful in 25s
Details
Test / test_interrupted_rebalance_ec_imm (push) Successful in 2m46s
Details
Test / test_snapshot_down_ec (push) Successful in 24s
Details
Test / test_splitbrain (push) Successful in 17s
Details
Test / test_snapshot_chain (push) Successful in 2m36s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m1s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m17s
Details
Test / test_rebalance_verify (push) Successful in 3m50s
Details
Test / test_switch_primary (push) Successful in 33s
Details
Test / test_write (push) Successful in 50s
Details
Test / test_write_xor (push) Successful in 56s
Details
Test / test_write_no_same (push) Successful in 14s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m29s
Details
Test / test_rebalance_verify_ec (push) Successful in 5m23s
Details
Test / test_heal_pg_size_2 (push) Successful in 4m23s
Details
Test / test_heal_ec (push) Successful in 4m57s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m21s
Details
Test / test_heal_csum_32k_dj (push) Successful in 6m33s
Details
Test / test_heal_csum_32k (push) Successful in 6m55s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m54s
Details
Test / test_scrub (push) Successful in 1m32s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m12s
Details
Test / test_heal_csum_4k_dj (push) Successful in 7m12s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m1s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m41s
Details
Test / test_heal_csum_4k (push) Successful in 6m22s
Details
Test / test_scrub_ec (push) Successful in 44s
Details
Test / test_nfs (push) Successful in 16s
Details
Test / test_scrub_xor (push) Successful in 18s
Details
2024-04-07 02:44:17 +03:00
Vitaliy Filippov
c5195666cd
Fix journal sequencing: make each journal write wait for all previous journal writes
Test / test_snapshot_ec (push) Successful in 31s
Details
Test / test_rm (push) Successful in 15s
Details
Test / test_snapshot_down (push) Successful in 30s
Details
Test / test_snapshot_down_ec (push) Successful in 32s
Details
Test / test_splitbrain (push) Successful in 25s
Details
Test / test_snapshot_chain (push) Successful in 2m11s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m1s
Details
Test / test_rebalance_verify_imm (push) Successful in 2m35s
Details
Test / test_rebalance_verify (push) Successful in 3m10s
Details
Test / test_switch_primary (push) Successful in 39s
Details
Test / test_write (push) Successful in 43s
Details
Test / test_write_no_same (push) Successful in 18s
Details
Test / test_write_xor (push) Successful in 1m3s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m38s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m22s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 5m11s
Details
Test / test_heal_ec (push) Successful in 4m23s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m55s
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 7m18s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m0s
Details
Test / test_scrub (push) Failing after 3m19s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m39s
Details
Test / test_scrub_xor (push) Successful in 58s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m13s
Details
Test / test_scrub_ec (push) Successful in 50s
Details
Test / test_scrub_pg_size_3 (push) Successful in 1m51s
Details
Test / test_heal_csum_4k (push) Successful in 5m13s
Details
Test / test_nfs (push) Successful in 23s
Details
2024-04-06 23:53:12 +03:00
Vitaliy Filippov
a2994ecd0d
Fix flusher possibly not trimming journal on rollback
2024-04-05 23:14:39 +03:00
Vitaliy Filippov
0b097ca3f2
Set 32k csum_block_size for HDD by default
2024-03-30 16:16:49 +03:00
Vitaliy Filippov
bfbb85e653
Replace -Oanything with -O3, not just -O/-O1/-O2
Test / test_move_reappear (push) Successful in 22s
Details
Test / test_rm (push) Successful in 13s
Details
Test / test_snapshot_down (push) Successful in 31s
Details
Test / test_snapshot_down_ec (push) Successful in 32s
Details
Test / test_splitbrain (push) Successful in 21s
Details
Test / test_snapshot_chain (push) Successful in 2m11s
Details
Test / test_snapshot_chain_ec (push) Successful in 3m14s
Details
Test / test_rebalance_verify_imm (push) Successful in 3m29s
Details
Test / test_rebalance_verify (push) Successful in 4m4s
Details
Test / test_switch_primary (push) Successful in 40s
Details
Test / test_write (push) Successful in 42s
Details
Test / test_write_no_same (push) Successful in 17s
Details
Test / test_write_xor (push) Successful in 1m3s
Details
Test / test_rebalance_verify_ec (push) Successful in 4m36s
Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m43s
Details
Test / test_heal_pg_size_2 (push) Successful in 3m36s
Details
Test / test_heal_ec (push) Successful in 6m7s
Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m39s
Details
Test / test_heal_csum_32k_dj (push) Successful in 5m33s
Details
Test / test_heal_csum_32k (push) Successful in 6m38s
Details
Test / test_scrub (push) Successful in 1m52s
Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m32s
Details
Test / test_heal_csum_4k_dj (push) Successful in 6m30s
Details
Test / test_heal_csum_4k (push) Successful in 6m25s
Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m32s
Details
Test / test_scrub_xor (push) Successful in 31s
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 35s
Details
Test / test_scrub_pg_size_3 (push) Successful in 43s
Details
Test / test_nfs (push) Successful in 13s
Details
Test / test_scrub_ec (push) Successful in 19s
Details
2024-03-18 02:03:44 +03:00
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
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
2043b4e374
Fix build errors for gcc 8
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
de840e6fe3
Reduce kv-cli loadjson load parallelism to 16
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
b5e04bf809
Fix build warning
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
8807a1623b
Fix markdown tables
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
f12855c31b
Add vitastor-kv to packages
2024-03-16 15:35:10 +03:00
Vitaliy Filippov
88516ab4bd
Remove extra log
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
6221126b4f
Allow to print simple-offsets just given the device size
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
6783d4a13c
Implement fool protection for FS pools
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
dcbe1afac3
Store pool ID in inode metadata
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
0bde28c24a
Make nfs_do_rmw a library function
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
bb8ca6184e
Support setattr guard
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
87310ef7bb
Support ctime
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
4f4b2dab80
Log NFS liveness checks
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
f70da82317
Add loadjson command to vitastor-kv
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
e42148f347
Allow to specify KV commands on command line
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
c289584469
Add JSON dump format
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
018e89f867
Erase verf key left from creation from ientries on every modification
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
603dc68f11
Implement async mtime change
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
7b12342933
Allow to specify additional NFS mount options
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
44bf0f16ee
Fix malloc/free in nfs_kv_read/write
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
5b747c12ec
Check if already mounted before mounting
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
05f5f46162
Fix zero used space, update mtime when moving/changing inode
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
b5604191c8
Ignore ECANCELED in nfs-proxy (happens in io_uring on fork)
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
e871de27de
Support unaligned shared_offsets, align shared file data instead of header
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
f600ce98e2
Implement auto-unmount local NFS server mode for vitastor-nfs
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
57605a5c13
Return error on failed shrink
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
29bd4561bb
Implement rename over an existing file/directory
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
7142460ec8
Support --logfile in nfs-proxy
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
d03f19ebe5
Fix shared file overlap, add FIXMEs
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
88f9d18be3
Create inode, then direntry, not direntry, then inode; retry ID collisions
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
6213fbd8c6
Fix NFS shared/aligned write FIXMEs
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
3aee37eadd
Allow to disable per-inode stats for VitastorFS pools
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
ecfc753e93
Add basic NFS tests, fix bugs
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
a574f9ad71
Return block NFS implementation back as an option too
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
7c235c9103
Move KV FS header into a separate file
2024-03-16 13:24:36 +03:00
Vitaliy Filippov
e5bb986164
Implement packing small files into shared inodes
2024-03-16 13:24:36 +03:00