]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
tools/ceph-objectstore-tool: split filestore directories offline to target hash level 23418/head
authorZhi Zhang <willzzhang@tencent.com>
Tue, 12 Sep 2017 06:49:31 +0000 (14:49 +0800)
committerDavid Zafman <dzafman@redhat.com>
Tue, 31 Jul 2018 22:18:07 +0000 (15:18 -0700)
commit167e0cccf147b46936e62cc7086362e5b3ff6c90
treefc021f43eb528232d8b705391ab6a94d1a735615
parentc6ed13896f8f0cbb4804fa9b86af15d0b0104776
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>
(cherry picked from commit e71659b11a54ea3abdb047d2ec480bd855acee4a)
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