Compare commits

..

15 Commits

Author SHA1 Message Date
Vitaliy Filippov 4d733e3159 Return error on failed shrink
Test / test_move_reappear (push) Successful in 19s Details
Test / test_rm (push) Successful in 12s Details
Test / test_snapshot_down (push) Successful in 30s Details
Test / test_snapshot_down_ec (push) Successful in 27s Details
Test / test_splitbrain (push) Successful in 25s Details
Test / test_snapshot_chain (push) Successful in 2m10s Details
Test / test_snapshot_chain_ec (push) Successful in 3m9s Details
Test / test_rebalance_verify_imm (push) Successful in 3m13s Details
Test / test_rebalance_verify (push) Successful in 3m50s Details
Test / test_switch_primary (push) Successful in 38s Details
Test / test_write (push) Successful in 43s Details
Test / test_write_no_same (push) Successful in 17s Details
Test / test_write_xor (push) Successful in 1m2s Details
Test / test_rebalance_verify_ec (push) Successful in 5m20s Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m23s Details
Test / test_heal_pg_size_2 (push) Successful in 3m27s Details
Test / test_heal_ec (push) Successful in 3m54s Details
Test / test_heal_csum_32k_dmj (push) Successful in 5m53s Details
Test / test_heal_csum_32k_dj (push) Successful in 5m47s Details
Test / test_heal_csum_32k (push) Successful in 7m2s Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m45s Details
Test / test_scrub (push) Successful in 1m17s Details
Test / test_scrub_zero_osd_2 (push) Successful in 42s Details
Test / test_scrub_pg_size_3 (push) Successful in 2m2s Details
Test / test_heal_csum_4k_dj (push) Successful in 5m57s Details
Test / test_heal_csum_4k (push) Successful in 5m56s Details
Test / test_nfs (push) Successful in 16s Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 24s Details
Test / test_scrub_ec (push) Successful in 24s Details
Test / test_scrub_xor (push) Failing after 3m6s Details
2024-03-07 19:51:05 +03:00
Vitaliy Filippov bcb507be7a Implement rename over an existing file/directory 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 70773deaf1 Support --logfile in nfs-proxy 2024-03-07 19:51:05 +03:00
Vitaliy Filippov d5e3d70851 Fix shared file overlap, add FIXMEs 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 3b233eb0f4 Create inode, then direntry, not direntry, then inode; retry ID collisions 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 7e6f2aa077 Fix NFS shared/aligned write FIXMEs 2024-03-07 19:51:05 +03:00
Vitaliy Filippov ffbeaf736b Allow to disable per-inode stats for VitastorFS pools 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 137d8c0148 Add basic NFS tests, fix bugs 2024-03-07 19:51:05 +03:00
Vitaliy Filippov bf7efed5db Return block NFS implementation back as an option too 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 29d5ce4ce0 Move KV FS header into a separate file 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 13f79febd8 Implement packing small files into shared inodes 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 2e044c37fd Split new NFS proxy implementation into multiple files 2024-03-07 19:51:05 +03:00
Vitaliy Filippov f52eca4bc5 WIP VitastorFS with metadata storage in VitastorKV 2024-03-07 19:51:05 +03:00
Vitaliy Filippov 36b341a96f First just recheck version without actually re-reading block in vitastor-kv
Test / test_snapshot_ec (push) Successful in 27s Details
Test / test_rm (push) Successful in 15s Details
Test / test_move_reappear (push) Successful in 19s 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 21s Details
Test / test_snapshot_chain (push) Successful in 2m7s Details
Test / test_snapshot_chain_ec (push) Successful in 2m53s Details
Test / test_rebalance_verify_imm (push) Successful in 5m7s Details
Test / test_rebalance_verify (push) Successful in 5m43s Details
Test / test_switch_primary (push) Successful in 34s Details
Test / test_write (push) Successful in 51s Details
Test / test_rebalance_verify_ec_imm (push) Successful in 4m32s Details
Test / test_write_no_same (push) Successful in 15s Details
Test / test_write_xor (push) Successful in 55s Details
Test / test_rebalance_verify_ec (push) Successful in 7m41s Details
Test / test_heal_pg_size_2 (push) Successful in 4m31s Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m22s Details
Test / test_heal_ec (push) Successful in 4m54s Details
Test / test_heal_csum_32k_dj (push) Successful in 5m56s Details
Test / test_heal_csum_32k (push) Successful in 6m29s Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m28s Details
Test / test_heal_csum_4k_dj (push) Successful in 6m15s Details
Test / test_scrub_zero_osd_2 (push) Successful in 54s Details
Test / test_scrub_xor (push) Successful in 47s Details
Test / test_scrub (push) Successful in 1m3s Details
Test / test_scrub_ec (push) Successful in 1m8s Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m10s Details
Test / test_scrub_pg_size_3 (push) Successful in 1m27s Details
Test / test_heal_csum_4k (push) Successful in 5m49s Details
2024-03-07 19:50:51 +03:00
Vitaliy Filippov 56b7b18adf Fix vitastor-kv hang on reopen & unfinished closed listing
Test / test_interrupted_rebalance_ec (push) Successful in 3m9s Details
Test / test_move_reappear (push) Successful in 20s Details
Test / test_rm (push) Successful in 12s Details
Test / test_snapshot_down (push) Successful in 28s Details
Test / test_snapshot_down_ec (push) Successful in 29s Details
Test / test_splitbrain (push) Successful in 21s Details
Test / test_snapshot_chain (push) Successful in 2m27s Details
Test / test_snapshot_chain_ec (push) Successful in 2m53s Details
Test / test_rebalance_verify_imm (push) Successful in 4m16s Details
Test / test_rebalance_verify (push) Successful in 4m50s Details
Test / test_switch_primary (push) Successful in 36s Details
Test / test_write (push) Successful in 46s Details
Test / test_rebalance_verify_ec_imm (push) Successful in 3m30s Details
Test / test_write_no_same (push) Successful in 16s Details
Test / test_write_xor (push) Successful in 1m27s Details
Test / test_rebalance_verify_ec (push) Successful in 7m18s Details
Test / test_heal_pg_size_2 (push) Successful in 4m0s Details
Test / test_heal_ec (push) Successful in 4m3s Details
Test / test_heal_csum_32k_dmj (push) Successful in 4m55s Details
Test / test_heal_csum_32k_dj (push) Successful in 6m17s Details
Test / test_heal_csum_32k (push) Successful in 6m18s Details
Test / test_heal_csum_4k_dmj (push) Successful in 6m37s Details
Test / test_scrub (push) Successful in 1m37s Details
Test / test_scrub_zero_osd_2 (push) Successful in 1m19s Details
Test / test_heal_csum_4k_dj (push) Successful in 6m55s Details
Test / test_scrub_xor (push) Successful in 50s Details
Test / test_scrub_ec (push) Successful in 45s Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Successful in 1m8s Details
Test / test_scrub_pg_size_3 (push) Successful in 1m56s Details
Test / test_heal_csum_4k (push) Successful in 5m39s Details
2024-03-07 18:09:05 +03:00
1 changed files with 10 additions and 5 deletions

View File

@ -197,6 +197,7 @@ struct kv_op_t
void exec(); void exec();
void next(); // for list void next(); // for list
~kv_op_t();
protected: protected:
int recheck_policy = KV_RECHECK_LEAF; int recheck_policy = KV_RECHECK_LEAF;
bool started = false; bool started = false;
@ -1003,6 +1004,15 @@ void kv_op_t::exec()
finish(-ENOSYS); finish(-ENOSYS);
} }
kv_op_t::~kv_op_t()
{
if (started && !done)
{
done = true;
db->active_ops--;
}
}
void kv_op_t::finish(int res) void kv_op_t::finish(int res)
{ {
auto db = this->db; auto db = this->db;
@ -2058,10 +2068,5 @@ void kv_dbw_t::list_next(void *handle, std::function<void(int res, const std::st
void kv_dbw_t::list_close(void *handle) void kv_dbw_t::list_close(void *handle)
{ {
kv_op_t *op = (kv_op_t*)handle; kv_op_t *op = (kv_op_t*)handle;
if (op->started && !op->done)
{
op->done = true;
op->db->active_ops--;
}
delete op; delete op;
} }