Vitaliy Filippov
|
298a5ec499
|
Free space on overwrites correctly
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
dd28f2f963
|
Use fsynced_lsn in flusher
|
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
|
31f7cbc19a
|
Fix pending_ops
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
20226200a4
|
Fix repeating cur_oid
|
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
|
38faa21966
|
Move "ack write" debug message
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
2afb16cd19
|
Fsync data on trim_lsn, not when writing compacted data
|
2025-11-23 19:08:23 +03:00 |
|
Vitaliy Filippov
|
908ce74500
|
Batch big_write data fsyncs
|
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
|
0fd557fe95
|
Use new LSNs on stabilize
|
2025-11-23 19:07:43 +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
|
393f9d6b6f
|
Do not use wr_offset
|
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
|
bf180f5292
|
Two more unordered_maps
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
6ee1093837
|
Remove sync_to_repeat map and use simpler repeating
|
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
|
ec9eba63af
|
It seems tcmalloc is actually slower, disable it
|
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
|
622cc55924
|
Use linked list heap in blockstore code
WIP, still slower than the old version :-E
|
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
|
388b5f19a1
|
v1 (old) store fixes for merged version
|
2025-11-23 19:07:43 +03:00 |
|
Vitaliy Filippov
|
19a386e4b3
|
Integrate "heap" metadata storage into blockstore
|
2025-11-23 19:07:42 +03:00 |
|
Vitaliy Filippov
|
9264ca96a4
|
"Heap" metadata storage scheme
|
2025-11-23 15:18:01 +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 |
|
Vitaliy Filippov
|
1de53ef7e6
|
Move crc32c_pad to util/crc32c.c
|
2025-08-10 18:03:17 +03:00 |
|
Vitaliy Filippov
|
918ea34af2
|
Remove "Only allow to overwrite part of the bitmap" blockstore API feature
|
2025-08-10 17:57:04 +03:00 |
|
Vitaliy Filippov
|
25d6281b3e
|
Remove BS_OP_SYNC_STAB_ALL
|
2025-07-26 14:13:11 +03:00 |
|