Commit Graph
127 Commits
Author SHA1 Message Date
Vitaliy Filippov cdc730314b Fix EC PGs hanging in REPEERING when flush error is last in the batch 2026-06-19 01:49:26 +03:00
Vitaliy Filippov ec9cfa76c1 Fix to_compact_count tracking on load in the new store 2026-06-18 00:21:03 +03:00
Vitaliy Filippov ba7637d9ad Add a test for incorrect batch big_write fsync logic in the new store 2026-06-18 00:04:15 +03:00
Vitaliy Filippov 2a81cef78a Fix crash on EIO retry in chained read 2026-06-17 16:38:20 +03:00
Vitaliy Filippov bcf6a7c7d1 Fix write-back queued items split in the client 2026-06-17 16:15:39 +03:00
Vitaliy Filippov 9b8107875f Add a regression test for incorrect chained_read bitmap recovery 2026-06-15 21:10:44 +03:00
Vitaliy Filippov 22d094ccc6 Add a regression test to check that parity-less EC writes do not destroy bitmaps 2026-06-15 01:56:54 +03:00
Vitaliy Filippov fd84d84279 Add a regression test for scrub bitmap comparison (EC 3+3, only chunk 1 written and lost) 2026-06-15 01:52:04 +03:00
Vitaliy Filippov af2b1e28e3 Add a regression test for EC bitmap recovery losing a parity chunk 2026-06-15 01:52:04 +03:00
Vitaliy Filippov e6d4b32629 Also check padded small_write 2026-06-15 01:31:19 +03:00
Vitaliy Filippov 4de22a08e2 Fix partial padded read checksum verification 2026-06-15 01:31:19 +03:00
Vitaliy Filippov a403de46b3 Test partial padded read 2026-06-15 01:31:19 +03:00
Vitaliy Filippov 51ecbadb12 Only update bitmaps when writing data in primary subops
Fixes fully degraded EC writes and recovering EC writes corrupting bitmaps
2026-06-15 01:31:19 +03:00
Vitaliy Filippov 6a4627b625 Write a test for store v1 & journal corruption preservation, fix MULTIPLE bugs 2026-06-14 11:23:36 +03:00
Vitaliy Filippov 553cc8ef87 Add a test for replicated bitmap scrub 2026-06-13 19:56:06 +03:00
Vitaliy Filippov 213f76c66c Add a regression test for LOC_CORRUPTED cleared on second scrub 2026-06-13 19:56:06 +03:00
Vitaliy Filippov 91698404a7 Add a basic OSD test as an example 2026-06-13 19:56:06 +03:00
Vitaliy Filippov 27bd38d95e Allow to create OSD with mocked blockstore and network 2026-06-13 19:56:06 +03:00
Vitaliy Filippov ef0e61be1b Split and mock etcd_state_client_t for testing 2026-06-13 19:56:06 +03:00
Vitaliy Filippov 26fb08d7da Change st_cli to pointer 2026-06-13 19:56:06 +03:00
Vitaliy Filippov 236ffbb24e Fix multilist_alloc_t bug (not triggerable in real operation but still a bug) 2026-06-10 01:01:20 +03:00
Vitaliy Filippov 0a04490043 Fix repeated rollbacks in bs_heap 2026-05-31 11:43:56 +03:00
Vitaliy Filippov dce7ffde6f Fix compaction with do_delete 2026-05-31 11:27:19 +03:00
Vitaliy Filippov ad24be717a Wrap delete rdma_conn into destroy_rdma_conn 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 648e3b12f0 Replace public/protected ifdef with a friend class 2026-05-18 01:17:56 +03:00
Vitaliy Filippov a675993c74 Remove unused osd_test.cpp and mock/ringloop.h, move epmgr out of osd_t 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 768b1675f8 Do not use ISA-L in test_crc32c 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 38fa722725 Remove the rest of tcmalloc from build 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 912aca11a3 Improve test_recheck to check all possible combinations 2026-05-18 01:17:56 +03:00
Vitaliy Filippov a0c8be46a4 Speedup blockstore_heap loading by postponing only objects with a lot of versions 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 625d5b7b9e Fix punch_holes not updating entry crc (bug when perfect_csum_update==true) 2026-05-18 01:17:56 +03:00
Vitaliy Filippov c2b5118127 Add data device fsyncs during compaction (forgotten during initial heap store dev) 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 4b926e2223 Add a test for missing data device fsyncs 2026-05-18 01:17:56 +03:00
Vitaliy Filippov 7432494e88 Remove _LARGEFILE64_SOURCE warnings 2026-05-11 14:59:20 +03:00
Vitaliy Filippov caa70317fa Add a workaround for "double claim" bug with the new store 2026-05-10 17:00:36 +03:00
Vitaliy Filippov 0134934c99 Do not skip garbage entries on start (rollback change from 3.0.4) 2026-04-11 12:05:02 +03:00
Vitaliy Filippov 9b264a212f Do full metadata GC on start (new store) 2026-04-03 18:08:12 +00:00
Vitaliy Filippov dd85315f22 Update CMake supported versions 2026-03-30 02:06:10 +03:00
Vitaliy Filippov 07915c2881 Use surrogate peer IDs instead of FDs 2026-03-30 02:06:10 +03:00
Vitaliy Filippov 310c512b43 Correctly delete handle_immediate_ops when stopping a client
Fixes map::at crash in some cases
2026-03-02 01:48:19 +03:00
Vitaliy Filippov a1d215ea2f Fix garbage validation, skip garbage entries on load 2026-02-17 01:12:26 +03:00
Vitaliy Filippov 4fa442a5de Sort items on load to fix O(N^2) startup 2026-02-17 01:12:26 +03:00
Vitaliy Filippov d6dacc67db Do not return EBUSY when already stable in the new store 2026-02-07 16:10:39 +03:00
Vitaliy Filippov 6bd0830ab8 Add a test for chunked resharding 2026-02-07 16:02:17 +03:00
Vitaliy Filippov 796e82f34d Check get_compacted_count and get_compact_queue_size 2026-02-07 15:44:54 +03:00
Vitaliy Filippov db39283970 Add a test for complete_lsn_write 2026-02-07 15:36:46 +03:00
Vitaliy Filippov 9f8c686321 Add a test for redirect_intent 2026-02-07 15:09:58 +03:00
Vitaliy Filippov 2618e559d1 Add rollback tests, simplify rollback logic 2026-02-07 15:09:58 +03:00
Vitaliy Filippov 037d2bc162 Add a test for recalc_inode_stats in the new store and fix a bug in it 2026-02-07 14:00:10 +03:00
Vitaliy Filippov f0b64adb32 Fix removed inodes not disappearing from statistics in the new store 2026-02-07 02:48:49 +03:00