]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore: Add do_write_v2_compressed()
authorAdam Kupczyk <akupczyk@ibm.com>
Tue, 8 Apr 2025 08:36:21 +0000 (08:36 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Thu, 24 Apr 2025 06:47:18 +0000 (06:47 +0000)
commit528813e46b18bba35a04c4c10807ff3fb0e73a4c
tree5d6e3c9dfef8a74930239e37991c9916643c1418
parent1ad86797f486cf6505e0666accb10efc32e4994a
os/bluestore: Add do_write_v2_compressed()

Modify do_write_v2() to branch into do_write_v2_compressed().
Segmented and regular cases are recognized and handled properly.
New do_write_v2_compressed() oversees compression / recompression.

Make one Estimator per Collection.
It makes possible for estimator to learn in collection specific compressibility.
In write_v2_compressed use compressor already selected in choose_write_options.
Make Collection create Estimator on first use.

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