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 |
|
Vitaliy Filippov
|
7915605609
|
Batch big_write data fsyncs
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
3ba3eed0cf
|
Use the same "inflight" queue to track compaction
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
5dc0b42146
|
Use new LSNs on stabilize
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
b44c3a7971
|
Assign new LSN on stabilize
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
59b7b2e0c3
|
WIP Only save MVCC copy when overwriting an object
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
7f0c78113b
|
Do not use wr_offset
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
20bbeb4095
|
Prevent compaction of incomplete object writes
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
3c687a2993
|
Experimental INTENT_WRITE write mode with WA=2 instead of 3
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
c78b4d184d
|
Remove alloc_buffer_area
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
c7a6b77c21
|
Two more unordered_maps
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
3cb7ec69bc
|
Remove sync_to_repeat map and use simpler repeating
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
954e7b658d
|
Use a sequence of bitmap_allocs for metadata instead of std::sets...
|
2025-12-02 01:52:12 +03:00 |
|
Vitaliy Filippov
|
2c6ea8a521
|
It seems tcmalloc is actually slower, disable it
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
bfd5575425
|
Use single add_used_space call instead of unmark+mark allocated_block
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
85e61c9c31
|
Remove compact_queue_lsn map
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
f580cee936
|
Implement a really crazy "multi-linked-list" allocator for buffered data
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
6d0460500a
|
Use linked list heap in blockstore code
WIP, still slower than the old version :-E
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
01ae800d34
|
Use linked lists in heap to avoid excessive memory copying
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
dbb885a6b1
|
v1 (old) store fixes for merged version
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
8ff2c268f7
|
Integrate "heap" metadata storage into blockstore
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
8430104c19
|
"Heap" metadata storage scheme
|
2025-12-02 01:52:11 +03:00 |
|
Vitaliy Filippov
|
3ad83e8d13
|
Use only space_left, not sqes_left
|
2025-11-23 15:17:57 +03:00 |
|
Vitaliy Filippov
|
5d3f3f47a7
|
Move all #defines to internal.h
|
2025-11-23 14:53:46 +03:00 |
|
Vitaliy Filippov
|
8ee7058ec8
|
Use an interface instead of explicit blockstore_t wrapper
|
2025-11-23 01:48:44 +03:00 |
|
Vitaliy Filippov
|
1badc6ad13
|
Remove include of blockstore_impl.h from disk_tool and osd
|
2025-11-23 01:48:44 +03:00 |
|
Vitaliy Filippov
|
be1858848e
|
Remove block_order and replace << >> by / * data_block_size
|
2025-11-22 18:10:32 +03:00 |
|
Vitaliy Filippov
|
d75b1cb2d2
|
Refactor some defines
|
2025-11-22 18:07:44 +03:00 |
|
 Flynn049andGitHub
|
c164adb43c
|
Fix: journal sector written flag not set when submitted (#109)
|
2025-11-07 00:59:04 +03:00 |
|
Vitaliy Filippov
|
e3c8fd28b4
|
Allow to test EC writes with fio_blockstore
|
2025-09-27 14:12:24 +03:00 |
|
Vitaliy Filippov
|
d87e7d1a37
|
Optimize WA - do not move to the next journal sector until the actual write
|
2025-09-27 11:23:05 +03:00 |
|
Vitaliy Filippov
|
2ebe3a468c
|
Mark all symbols hidden by default, export only required ones
|
2025-08-24 16:55:58 +03:00 |
|
Vitaliy Filippov
|
0be86a306d
|
Remove old liburing version support as it's now included
|
2025-08-24 16:55:58 +03:00 |
|
Vitaliy Filippov
|
9f57c75acf
|
unordered_map flush_versions
|
2025-08-23 17:45:56 +03:00 |
|
Vitaliy Filippov
|
53b12641d1
|
Fix the fix :)
|
2025-08-23 17:45:56 +03:00 |
|
 flynn.yangandVitaliy Filippov
|
5c5c8825dc
|
Avoid multiple inflight overwrites to meta blocks
https://github.com/vitalif/vitastor/pull/83
By https://github.com/Flynn049
By submitting this pull request, I accept Vitastor CLA
|
2025-08-23 17:45:03 +03:00 |
|
Vitaliy Filippov
|
feaf7a15cf
|
Use CRC32C implementation from ISA-L when available - enables VPCLMULQDQ version with AVX512 which is ~2x faster
|
2025-08-10 18:03:47 +03:00 |
|