]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
os/bluestore: Refactor of WAL-v2 BlueFS
authorAdam Kupczyk <akupczyk@ibm.com>
Mon, 10 Mar 2025 12:15:52 +0000 (12:15 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Fri, 28 Mar 2025 16:06:02 +0000 (16:06 +0000)
commitd1703dc9eb36a61a03030aca5e45f04ce29c06d6
tree1ce4e4fd81d4edf94273404a5d2c2a8a0f55a256
parent35c1d4a54fae3f50c5498e40a33d66be6921cd7e
os/bluestore: Refactor of WAL-v2 BlueFS

Main changes:
- remove bluefs_wal_header_t; we no longer use denc directly,
  instead we read length and marker directly
- get rid of wal_limit; this is replaced with splitting
  WAL_V2=>{WAL_V2,WAL_V2_FIN}. WAL_V2 means there could be more wal data,
  WAL_V2_FIN means file was orderly closed = no more data.
- modified wal_marker_t (previously WALMarker) to be calculated in
  endiness-agnostic way.
- replaced _wal_update_size with _wal_index_file; it does a similar
  function, but is less convoluted now
- simplified _wal_read
- now BlueFS::close_writer() flushes data
- BlueRocksEnv's BlueRocksWritableFile::truncate() now does the action

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
src/os/bluestore/BlueFS.cc
src/os/bluestore/BlueFS.h
src/os/bluestore/BlueRocksEnv.cc
src/os/bluestore/bluefs_types.cc
src/os/bluestore/bluefs_types.h