]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore: fix incomplete faulty range marking when doing compression 22873/head
authorIgor Fedotov <ifedotov@suse.com>
Thu, 5 Jul 2018 11:27:12 +0000 (14:27 +0300)
committerIgor Fedotov <ifedotov@suse.com>
Thu, 5 Jul 2018 14:47:37 +0000 (17:47 +0300)
commit0f04d4484c8663767bdb60f743a8835897013b5a
tree650a8877c5b6f2ffea8e799d7882509cbcf97c84
parent628927d5ba91acbf64f4c12ec3213760f13e9f5c
os/bluestore: fix incomplete faulty range marking when doing compression
GC.

Under some scenarios GC might process an extent range where some inner extents are left untouched by GC (as there is no need for that). Hence GC doesn't invaliate these inner extents with fault_range call. If untouched extents are mapped to unloaded shards it results in subsequent assertion on o->extent_map.dirty_range() call.
The solution is to invalidate the whole extent range when doing GC.

Fixes: https://tracker.ceph.com/issues/23540
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
src/os/bluestore/BlueStore.cc