]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore: create the tail when first set FLAG_OMAP 27627/head
authorningtao <ningtao@sangfor.com.cn>
Tue, 28 May 2019 15:42:47 +0000 (23:42 +0800)
committerningtao <ningtao@sangfor.com.cn>
Tue, 28 May 2019 15:42:47 +0000 (23:42 +0800)
commit0d01fb0fc65a9b1fe585b33ae1ca22e4805fd7f9
treef00896853bf28c70e92f5f6c6a08d6dc380f7b1e
parent2cd5ca2467de835eb89e50a939476564f48d1889
os/bluestore: create the tail when first set FLAG_OMAP

the omap iterator when listing omap use the tail of '~', when the iterator moved to the last key of the omapswe wanted, we will try to call extra next(), usually this will be another object's omap header(with '-'). IF there are some deleted key or tombstones, rocksdb will fall in the loop of FindNextUserEntryInternal until find a valid key, so it will travels all dead key in mid and read the sst file heavily.

Signed-off-by: Tao Ning <ningtao@sangfor.com.cn>
src/os/bluestore/BlueStore.cc