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
53b4329fac
Add missing active_flushers--
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
603b26b896
Add a FIXME about delete buffering
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
f504e356d5
Fix schedule_next_recheck_at
2026-05-18 01:17:56 +03:00
Vitaliy Filippov
4ed17b7070
Sync metadata after writing out recheck_modified_blocks
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
dcdabbc1ec
Fix vitastor-disk resize error return codes missed
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
9e507fd333
Fix typo in crc32_pad
...
Didn't affect anything though because it was only skipping < 4096 byte remainders
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
a5d9a6996a
Do not try to increment ref_count if recheck_state is null
2026-05-18 01:17:56 +03:00
Vitaliy Filippov
0ee03e7172
Add reply == request opcode check (also just in case)
2026-05-18 01:17:56 +03:00
Vitaliy Filippov
88b7d9afcd
Expect to receive bitmap only for successfull response
2026-05-18 01:17:56 +03:00
Vitaliy Filippov
f271c8450c
Block sync by all previous syncs
2026-05-11 16:33:49 +03:00
Vitaliy Filippov
f78d7d4efc
Do not capture client pointer in ping lambda
2026-05-11 16:30:01 +03:00
Vitaliy Filippov
fdaf7c88ff
Fix RDMA send buffer wraparound - could only lead to slower sending but not to corruption because the bug was canceled by send_out_pos >= send_done_pos check
2026-05-11 16:28:03 +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
36d2b56208
Deep copy merged_history, also just in case
2026-05-11 16:14:03 +03:00
Vitaliy Filippov
14b22f2ba9
Retry even fatal errors for OP_SYNC (no real-world issue, just in case)
2026-05-11 16:08:14 +03:00
Vitaliy Filippov
fe8b1fe0cc
Add assert in cluster_client writeback to prevent overflow when incorrect operation data is passed
2026-05-11 16:06:19 +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
d0c0f3ea39
Do not ignore cur_primary change on PG state validation errors
2026-05-11 14:59:20 +03:00
Vitaliy Filippov
f61190f31d
Fix send_list/outbox desync on failed SEC_READ_BMP (possible memory leak)
2026-05-11 14:59:11 +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
87a5230798
Add forgotten header_csum check to the new store
2026-05-11 14:59:08 +03:00
Vitaliy Filippov
0c5e6d4346
Do not use modified_block(ui32) to store lsn(ui64)
2026-05-11 14:59:08 +03:00
Vitaliy Filippov
b278087410
Fix assert in blockstore_heap
2026-05-11 13:01:03 +03:00
Vitaliy Filippov
a8e821b13b
Mark OSDs as dirty during deletes more correctly
2026-05-11 12:56:23 +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
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
553191c3ff
Add asserts to the new store too O:-)
2026-05-10 11:39:54 +03:00
Vitaliy Filippov
ab385252b5
Add offset asserts before each write
2026-05-10 10:56:32 +03:00
Vitaliy Filippov
041185c673
Release 3.0.11
...
A single hotfix:
- Fix missing error handling in EC snapshot/cloned image reads potentially
leading to corrupted reads during OSD/PG restarts
v3.0.11
2026-05-09 18:49:36 +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
2ba56074f9
Run copy_part_bitmaps only after all subops succeed (slightly more correct)
2026-05-07 15:01:40 +03:00
Vitaliy Filippov
4acfe149cb
Release 3.0.10
...
Important bug fixes (new store):
- Fix OSDs possibly refusing to start with "write metadata failed at offset xxx: Invalid argument"
(fix buffer alignment during initial garbage collection)
- Rollback change from 3.0.4 - on-disk garbage entries are not skipped on start again. This change
doesn't have any impact normally, but OSDs originally running 3.0.0-3.0.2 and then upgraded
to 3.0.9 may hit a bug where 3.0.9 refuses to start due to entries marked as garbage too
early and flushed to disk in 3.0.0-3.0.2.
Other changes:
- Auto-select the only RDMA device/port if there is only one
- Rollback one 3.0.9 change - there was no actual use-after-free :)
(the problem was only relevant to an unstable development version)
- Fix `vitastor-nfs --trace` option
- Fix an unintended 1 second sleep in vitastor-cli rm-data
- Fix inode statistics not being cleared for a deleted pool
- Fix print to stdout in client
v3.0.10
2026-04-27 13:53:48 +03:00
Vitaliy Filippov
008ed5b269
Rollback 25ecca7625 - there was no actual use-after-free :)
2026-04-22 01:35:38 +03:00
Vitaliy Filippov
4fffe0f032
Fix vitastor-nfs trace option
2026-04-20 21:51:47 +03:00
Vitaliy Filippov
a76d5ccc0d
Wakeup callers in rm-data
2026-04-17 13:53:32 +03:00
Vitaliy Filippov
8ed1e180e0
Clear inode_stats in mon
2026-04-14 02:44:46 +03:00
Vitaliy Filippov
8832fc3b14
Fix print to stdout in client
2026-04-14 02:43:50 +03:00