]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore: allocate entire write in one go 17698/head
authorSage Weil <sage@redhat.com>
Thu, 10 Aug 2017 20:44:59 +0000 (16:44 -0400)
committerSage Weil <sage@redhat.com>
Wed, 13 Sep 2017 14:49:50 +0000 (09:49 -0500)
commite200f358499af8e3acb6ac4f675cc167433b53ec
treec74bfad524825e5e4364c7416423ae1a29ff2c33
parentf48113f50f78c9934221c417e5998e632a93381d
os/bluestore: allocate entire write in one go

On the first pass through the writes, compress data and calculate a final
amount of space we need to allocate.  On the second pass, assign the
extents to blobs and queue the writes.

This allows us to do a single allocation for all blobs, which will lead
to less fragmentation and a much better write pattern.

Signed-off-by: Sage Weil <sage@redhat.com>
src/os/bluestore/BlueStore.cc
src/os/bluestore/BlueStore.h