Vitaliy Filippov
abeb8b73fa
Do not recheck data location on intent-write
2025-11-23 19:08:23 +03:00
Vitaliy Filippov
15d47a2695
Remove FIXMEs
2025-11-23 19:08:23 +03:00
Vitaliy Filippov
661c45cbb5
Fsync after stabilizing
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
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
b958f7f119
Add test_compact_block
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
Vitaliy Filippov
a1c17d90a3
Add done != expected send error message
2025-11-18 01:23:52 +03:00
Vitaliy Filippov
f0112050ce
Release 2.4.3
...
- Daemonize before forking in NFS proxy to fix OSD RDMA support (#107 )
- Fix possible PG_INCOMPLETE on node outage when allow_net_split is false
- Fix build under Ubuntu 25.10
- Fix journal_no_same_sector_overwrites mode after optimizing WA (#109 )
v2.4.3
2025-11-09 02:18:35 +03:00
Vitaliy Filippov
d6b8d921d6
Daemonize before forking in NFS proxy to fix OSD RDMA support ( fix #107 )
2025-11-09 01:07:11 +03:00