Vitaliy Filippov
|
cd51f14a90
|
Fix incorrect chained_read bitmap recovery
|
2026-06-15 21:10:44 +03:00 |
|
Vitaliy Filippov
|
ca606570f7
|
Add request size validation
|
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
|
9dda449f48
|
Fix fully-degraded EC writes destroying bitmaps
|
2026-06-15 01:52:04 +03:00 |
|
Vitaliy Filippov
|
ac20f605f6
|
Fix scrub bitmap comparison
|
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
|
fd2b8b8792
|
Fix ec_check_combination more correctly (fixes osd_rmw_test_je)
|
2026-06-13 19:56:06 +03:00 |
|
Vitaliy Filippov
|
f3d662bac7
|
Verify bitmaps during scrub
|
2026-06-13 19:56:06 +03:00 |
|
Vitaliy Filippov
|
677e755e4e
|
Replace VLA with a vector and also fix invalid dangling pointer warnings
|
2026-06-13 19:56:06 +03:00 |
|
Vitaliy Filippov
|
11a972cbfb
|
Delete pg.peering_state when it is not needed
|
2026-06-13 19:56:06 +03:00 |
|
Vitaliy Filippov
|
1834743a0e
|
Fix incorrect clearing of LOC_CORRUPTED on the 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
|
906294ae9a
|
Fix ec_check_combination() short tmp_buf allocation
|
2026-06-13 19:56:05 +03:00 |
|
Vitaliy Filippov
|
6901227390
|
Fix cached EC decoding of multiple stripes with ISA-L
|
2026-06-10 02:07:58 +03:00 |
|
Vitaliy Filippov
|
7d70c90196
|
Save osd_num for locally submitted writes for mark_partial_write (still needs osd unit tests :))
|
2026-05-31 11:47:48 +03:00 |
|
Vitaliy Filippov
|
de26a995fc
|
Fix possible null deref on pg_lock check failure in sec_read_bmp
|
2026-05-28 00:58:02 +03:00 |
|
Vitaliy Filippov
|
27be4ee2fa
|
Followup to mark_partial_write fix - also free subops in other branch to prevent assert on ENOSPC
|
2026-05-20 22:04:28 +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
|
572b20fedc
|
Fix mark_partial_write for replicas (TODO: try to write an OSD unit test for it)
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
4e2724b28f
|
Remove duplicate subop submit/fail code
|
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
|
0007a831b6
|
Add return to handle_flush_op when stopping the PG
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
c9f7308b6a
|
Wrap this submit_ into n_subops > 0 too
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
7b454bd16c
|
Do not try to free snapshot_bitmaps
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
a7f41c4a12
|
Add assert to reconstruct_stripes_ec
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
5d78057ac3
|
Fix cur_op->buf memory leak on EIO/EDOM reads(?)
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
8efc5a353f
|
Fix pg_state_bits overwriting PG_HAS_CORRUPTED
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
a3b0fe0deb
|
Fix op stats not tracked for OP_WRITE_STABLE
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
1fd2819724
|
Fix marking only first OSD from non-majority group as corrupted during scrub
Note: Could be tested with 5 replicas - 3 good and 2 corrupted if we had OSD unit tests
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
a5d9a6996a
|
Do not try to increment ref_count if recheck_state is null
|
2026-05-18 01:17:56 +03:00 |
|
Vitaliy Filippov
|
2fb6eb0c30
|
Free scrub_cur_list.buf when turning on no_scrub (potential memory leak)
|
2026-05-11 16:15:48 +03:00 |
|
Vitaliy Filippov
|
1ec963e468
|
Fix ec_find_good for misplaced objects with extra corrupted chunks
|
2026-05-11 15:57:21 +03:00 |
|
Vitaliy Filippov
|
5100f822d8
|
Wrap all submit_primary_xxx_subops waits with if (n_subops) > 0
|
2026-05-11 15:17:50 +03:00 |
|
Vitaliy Filippov
|
7432494e88
|
Remove _LARGEFILE64_SOURCE warnings
|
2026-05-11 14:59:20 +03:00 |
|
Vitaliy Filippov
|
3dc0ab5c33
|
Clear inconsistent_objects on repeer
|
2026-05-11 14:59:08 +03:00 |
|
Vitaliy Filippov
|
de96efed2f
|
Fix 2^(64-PG_EPOCH_BITS) - 1 check
|
2026-05-11 14:59:08 +03:00 |
|
Vitaliy Filippov
|
a8e821b13b
|
Mark OSDs as dirty during deletes more correctly
|
2026-05-11 12:56:23 +03:00 |
|
Vitaliy Filippov
|
b8eaaabfe4
|
Add raw-ls command for troubleshooting
|
2026-05-10 17:00:36 +03:00 |
|
Vitaliy Filippov
|
e4d80c415e
|
Always check pool resharding state also for stabilize/rollback
|
2026-05-10 13:22:02 +03:00 |
|
Vitaliy Filippov
|
b03ac80a57
|
Fix missing error handling in chained read sec_read_bmp handling
|
2026-05-07 15:01:49 +03:00 |
|
Vitaliy Filippov
|
008ed5b269
|
Rollback 25ecca7625 - there was no actual use-after-free :)
|
2026-04-22 01:35:38 +03:00 |
|
Vitaliy Filippov
|
ff7f5cb4f4
|
Report live & garbage entry count / memory with log_level > 1
|
2026-04-02 23:45:13 +00:00 |
|
Vitaliy Filippov
|
25ecca7625
|
Fix use-after-free in OSD ops (ooops)
|
2026-04-02 13:48:17 +00:00 |
|
Vitaliy Filippov
|
dd85315f22
|
Update CMake supported versions
|
2026-03-30 02:06:10 +03:00 |
|
Vitaliy Filippov
|
2a5028d17f
|
Use robin_hood_map in messenger
|
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
|
79141eb383
|
Fix commented out //this->pg_state_dirty.insert
|
2026-03-28 20:08:52 +03:00 |
|