diff options
author | Sage Weil <sage@newdream.net> | 2012-05-02 12:06:28 -0700 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2012-05-02 14:55:53 -0700 |
commit | eca7eac34af0468fe6d8c7db0f87d04c18dc51eb (patch) | |
tree | 8dbc88530b57e72b61d5e28af40cdd038a7dfc35 | |
parent | 695d3775c2bf1144325e5d3a3e61e5138f488e56 (diff) | |
download | ceph-eca7eac34af0468fe6d8c7db0f87d04c18dc51eb.tar.gz |
crush: fix weights when removing items
Reweight an item to 0 before removing it, so that the parent weights are
adjusted accordingly.
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r-- | src/crush/CrushWrapper.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/crush/CrushWrapper.cc b/src/crush/CrushWrapper.cc index d8ddca2a0fd..13351d54d04 100644 --- a/src/crush/CrushWrapper.cc +++ b/src/crush/CrushWrapper.cc @@ -44,6 +44,7 @@ int CrushWrapper::remove_item(CephContext *cct, int item) } was_bucket = t; } + adjust_item_weight(cct, item, 0); ldout(cct, 5) << "remove_device removing item " << item << " from bucket " << b->id << dendl; crush_bucket_remove_item(b, item); ret = 0; |