Vitaliy Filippov
|
38112e9012
|
Fix vitastor-disk build (with old metadata and journal formats)
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
353460cc83
|
Collapse intent_writes on other write types too
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
92631bb6b3
|
Fix buffer overflow in test_heap
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
ce050e7eda
|
Add a test for parallel reads with block checksums
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
556fc9a876
|
Remove cancel_all_writes
Not needed because a) parallel writes to the same object are forbidden
b) subsequent writes don't depend on previous ones anyway.
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
274f9ecda5
|
Add a test for "perfect_csum_update" mode
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
e0d2705294
|
Add 2 tests for intent writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
57d2f30303
|
Add a test with fsync
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
7f4c541a6f
|
Implement buffered disk_mock_t mode, extract ringloop_mock.cpp
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
b0b495a991
|
unaligned_intent does not need special handling anymore
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
da8bf2b73b
|
Add an option for global coverage
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
615e9d1274
|
Fix some blockstore bugs discovered by the mocked test!
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
ec5e93307d
|
Add a basic mocked blockstore test
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
b599334c4a
|
Add mocks for blockstore integration tests: timerfd, ring_loop_mock_t and disk_mock_t
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
bcde273ca1
|
Test calc_checksums
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
87fe1bc00f
|
Check 2/3 blocks in test_recheck
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
d4c465f786
|
Fix intent writes with padded checksums
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
62995243f3
|
Fix reads from intent writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
7ea4884ef6
|
Disable punching block checksums and allow to enable it with a parameter
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
8823ddf48e
|
Process big_writes as intents to avoid fsyncs
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
db14037ac8
|
Fix collapsing intent-over-intent checksums
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
64db505357
|
Allow 1 intent_write over big_write in fsync mode
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
8992eb57df
|
Block lists by previous writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
f3048d0858
|
Allow multiple writes with the same version
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
714b0783bf
|
Add tests for intent writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
e8e2aa5dba
|
Call finish_load after async recheck
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
9063bcaa41
|
More tests for incorrect data cases
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
c392e914e2
|
Do not block writes on previous writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
249e04ac0d
|
Add atomic_write_size parameter
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
16dee7c136
|
Use ui32 for block sizes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
adddf9b3b1
|
Remove extra unneeded read_entry-s
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
6a5044ae36
|
Do not recheck data location on intent-write
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
49407afa17
|
Remove FIXMEs
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
a00fc1bc24
|
Fsync after stabilizing
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
3a96d41c93
|
Fsync & update metadata when block checksums are enabled
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
2e4d5ae5bb
|
Return new_lsn from erase and rollback
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
db458fc999
|
Allow to cancel compaction for unfinished writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
574520be0f
|
Fix space allocation & compaction on start
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
715e7df51f
|
Use inflight_lsn iterators
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
ea5ee0c46f
|
Free space on overwrites correctly
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
47bec8af47
|
Use fsynced_lsn in flusher
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
ec3bf4ae6c
|
Correctly track fsynced_lsn when fsyncs are enabled
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
cb45b1865d
|
Extract multilist_alloc_t
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
f656545f4a
|
Check for overlaps during blockstore loading
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
0241a61412
|
Fix multilist_alloc_t bug, move verify and print to lib
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
0bc81f5320
|
Fix pending_ops
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
84961f6d0a
|
Fix repeating cur_oid
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
cb085f9c8f
|
Mark overwritten heap_writes as immediately compacted
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
a9773b1908
|
Move "ack write" debug message
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
11783a2d7a
|
Fsync data on trim_lsn, not when writing compacted data
|
2025-12-02 01:52:12 +03:00 |
|