This condition should only kick in for pgp_num reductions, or else we'll
end up jump to the end instead of slowing down merges. (For splits, we
don't need to pace like this at all.)
Fixes
76503a1438fa1f166d2c230c73ca8d7b67e6468d
Signed-off-by: Sage Weil <sage@redhat.com>
}
dout(20) << " room " << room << " estmax " << estmax
<< " delta " << delta << " next " << next << dendl;
- if (p.get_pgp_num_target() == p.get_pg_num_target()) {
+ if (p.get_pgp_num_target() == p.get_pg_num_target() &&
+ p.get_pgp_num_target() < p.get_pg_num()) {
// since pgp_num is tracking pg_num, ceph is handling
// pgp_num. so, be responsible: don't let pgp_num get
// too far out ahead of merges (if we are merging).