]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
tools/ceph-objectstore-tool: split filestore directories offline to target hash level
authorZhi Zhang <willzzhang@tencent.com>
Tue, 12 Sep 2017 06:49:31 +0000 (14:49 +0800)
committerZhi Zhang <willzzhang@tencent.com>
Tue, 12 Sep 2017 06:49:31 +0000 (14:49 +0800)
commite71659b11a54ea3abdb047d2ec480bd855acee4a
tree5ddb41c7ff3e838ea3f09e8a37093badfede88fb
parentc54602caa40b99a36c31e47aa7890064cdcbbcad
tools/ceph-objectstore-tool: split filestore directories offline to target hash level

Currently ceph-objectstore-tool can only split dirs that already
meet the usual object number criteria. It won't reduce the cost of
online split for those dirs that would meet the criteria online.

This change uses 'arg1' option for apply-layout-settings to specify
the target hash level wants to split to. Then dirs will be split
offline no matters how many objects they have. This also helps
those pools that forgot to do pre-splitting at their creation time.

Signed-off-by: Zhi Zhang <zhangz.david@outlook.com>
src/os/filestore/CollectionIndex.h
src/os/filestore/FileStore.cc
src/os/filestore/FileStore.h
src/os/filestore/HashIndex.cc
src/os/filestore/HashIndex.h
src/tools/ceph_objectstore_tool.cc