]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
crush: add root_bucket to identify underfull buckets
authorhuangjun <huangjun@xsky.com>
Wed, 20 Mar 2019 08:44:02 +0000 (16:44 +0800)
committerhuangjun <huangjun@xsky.com>
Wed, 20 Mar 2019 08:44:02 +0000 (16:44 +0800)
commit3d5678d3561d90a10d9de3cb6e7e0405dbe8fdfe
treeecb50283a5f6634474d70db4a1dcecc30bcaff08
parent532bb2004bd906c57d78aa475207c5728e594a36
crush: add root_bucket to identify underfull buckets

All underfull buckets under root_buckets will be taken as target

For the crule rule:
    step take datacenter0
    step chooseleaf firstn 2 type host
    step emit
    step take datacenter1
    step chooseleaf firstn 2 type host
    step emit

If one host contains overfull osd but no underfull osd,
it will use other underfull buckets as target, which
maybe not in the same datacenter, that will
broke the rule.

Fixes: http://tracker.ceph.com/issues/38826
Signed-off-by: huangjun <huangjun@xsky.com>
src/crush/CrushWrapper.cc
src/crush/CrushWrapper.h