Vitaliy Filippov
d80c12ced2
Prevent parallel modifications of the same object in fio_bs
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
b9713deecd
Pass bitmap in fio_bs
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
852734270e
wip
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
8f92979a18
Move prev/next/block_num to struct heap_list_item_t
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
b720af74c2
WIP experimental - double linked list
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
96df2966cc
Reserve block entries
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
d3b171e047
FIXME
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
7287b7fc25
Remove std::set meta_nearfull
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
e1bb670491
Apply inflights in batches
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
1e5a01def8
Another experiment: store writes in mallocs
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
371e630f52
Recheck repeat using map
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
0a7ae616f3
Do not use pending_modified_blocks to check
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
82f5fb7edd
Remap without intermediate hashmap
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
ec8527c89d
Experimental: move prev_count to the map itself
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
5afef7ca6d
WIP Integrate LSMeta :-)
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
e512e1eeb1
LSMeta
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
7ab60c00ab
Use 32-bit big write location (OK for up to 512 TB OSDs)
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
ac8e0ef231
Do not store offset & len in big_writes
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
94f3634602
Fix object crc32c calculation
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
2b8a9e3f90
Add entry_type to heap_object_t too
...
This is required to:
1) later inline the last "big_write" entry into the object to slightly reduce memory usage
2) eliminate an ugly hack where entry type is determined by its size
3) make the storage scheme extensible i.e. when adding new entry types
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
ef792608b0
Rename flags to entry_type
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
04531bcfbb
Use robin_hood::unordered_flat_map - it has 1 byte overhead instead of 8 byte
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
1b40fa1cee
Revert try_get
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
3ea9230ed0
WIP dump/load heap
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
97dfbfad75
Add missing list_stable_limit support
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
c148f97ee4
Fix checksum validation in !inmemory_journal mode
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
b1f61eb5c8
Fix checksum padding during read
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
9db8748647
Remove unused bs->buffer_area + buffer calc
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
e747319c1e
Add missing memset zero_object to 0
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
0cb0e31ceb
Mark in-memory data reads as SKIP_CSUM
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
0703efd8b9
Add missing calc_crc32c after updating block checksums
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
4a0720a231
Fix checksum padding during flush
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
57d83ecf7c
Fix free_read_buffers
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
d4f7bbb412
Fix assert(region_marker) at the end of the block in find_block_run()
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
e5e71fc21a
Fix assert(is_buffer_area_free) with size=0
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
0ec4f1608a
Add a copy of wyhash
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
232e416658
Fix test build with isa-l
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
23d5fec580
Remove assert !region_marker & FREE
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
16881a3d6b
Use wyhash
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
7cde5c75b9
Change emhashes
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
4c32244409
unordered_map mvcc
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
30c5a79772
Fix bad resharding due to the lack of iteration order in a hashmap
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
6e856c2719
Use emhash::try_get
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
af710d3c65
Use emhash hashmap (2x faster)
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
8189c3a4ef
Use unordered_maps for object-block index
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
552ba5d885
B-tree is slower...
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
14bbf18ede
Unordered_map for pool settings
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
c3eaaa4b94
Fix read fio bench
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
8b35c09e12
Fix vitastor-disk prepare and param validation
2025-12-02 01:52:12 +03:00
Vitaliy Filippov
74b8ea1303
Fix skipping of corrupted objects, fix use_buffer_area with zero size
2025-12-02 01:52:12 +03:00