Vitaliy Filippov
|
4bc1d09fbd
|
Fix a bug with unstable_big over unstable_small
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
598e1ed1db
|
Integrate moving objects
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
a49c176423
|
Support moving objects between blocks
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
ecd26ebac3
|
Fix zero-length writes
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
98bdcfbff9
|
Add read_blocks() API
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
8762ae07a6
|
Remove block_order parameter
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
b2b30201c4
|
Extract (flags & BS_HEAP_TYPE) into a function
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
0b28ec8fc9
|
Fix loading for out-of-order lsns
|
2025-11-23 19:08:24 +03:00 |
|
Vitaliy Filippov
|
4dfb80e6a1
|
Collapse intent_writes on other write types too
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
ad6354a537
|
Add a test for "perfect_csum_update" mode
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
346d20ce29
|
Add 2 tests for intent writes
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
eb9633f21f
|
Add a test with fsync
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
7f7d79fdc9
|
Fix some blockstore bugs discovered by the mocked test!
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
c5c332cb9a
|
Test calc_checksums
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
b28c67ba5f
|
Fix intent writes with padded checksums
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
5fe474573e
|
Fix collapsing intent-over-intent checksums
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
89644692ac
|
Allow 1 intent_write over big_write in fsync mode
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
fb83ebbfff
|
Allow multiple writes with the same version
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
abf741048a
|
Add tests for intent writes
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
43c4510a29
|
More tests for incorrect data cases
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
6464dae129
|
Use ui32 for block sizes
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
e0d60dd49f
|
Remove extra unneeded read_entry-s
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
15d47a2695
|
Remove FIXMEs
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
bff3d35c85
|
Fsync & update metadata when block checksums are enabled
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
18a2858c62
|
Return new_lsn from erase and rollback
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
999d0e2961
|
Allow to cancel compaction for unfinished writes
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
df1ab722dd
|
Fix space allocation & compaction on start
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
40a4952592
|
Use inflight_lsn iterators
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
298a5ec499
|
Free space on overwrites correctly
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
41256ea460
|
Correctly track fsynced_lsn when fsyncs are enabled
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
229c19dee4
|
Extract multilist_alloc_t
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
1ccb241eef
|
Check for overlaps during blockstore loading
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
b8245f86eb
|
Fix multilist_alloc_t bug, move verify and print to lib
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
48f8ae8e30
|
Mark overwritten heap_writes as immediately compacted
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
98da2cb6e0
|
Use the same "inflight" queue to track compaction
|
2025-11-23 19:08:22 +03:00 |
|
Vitaliy Filippov
|
a52dd0dfb5
|
Assign new LSN on stabilize
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
66847653aa
|
WIP Only save MVCC copy when overwriting an object
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
9a87452d23
|
Prevent compaction of incomplete object writes
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
385973f777
|
Experimental INTENT_WRITE write mode with WA=2 instead of 3
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
4d649b1726
|
Remove alloc_buffer_area
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
1747cd6a95
|
Use a sequence of bitmap_allocs for metadata instead of std::sets...
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
86dbd99268
|
Use single add_used_space call instead of unmark+mark allocated_block
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
7ad3001afd
|
Remove compact_queue_lsn map
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
5222c2724f
|
Implement a really crazy "multi-linked-list" allocator for buffered data
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
e2fa675ad0
|
Use linked lists in heap to avoid excessive memory copying
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
9264ca96a4
|
"Heap" metadata storage scheme
|
2025-11-23 15:18:01 +03:00 |
|