]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mgr/DaemonServer: prevent pgp_num reductions from outpacing pg_num merges 27473/head
authorSage Weil <sage@redhat.com>
Tue, 9 Apr 2019 22:12:37 +0000 (17:12 -0500)
committerSage Weil <sage@redhat.com>
Tue, 9 Apr 2019 22:15:38 +0000 (17:15 -0500)
commit76503a1438fa1f166d2c230c73ca8d7b67e6468d
treebab8b53d5195601698d43a43af7ce5eec68e8c48
parentdff2bf78bee3e8e671bf4ebfc524d9b3da4fb61f
mgr/DaemonServer: prevent pgp_num reductions from outpacing pg_num merges

If we are merging lots of pgs down to a much smaller number of pgs, and
the pgs are able to move quickly (faster than the merges happen), we can
end up with too many pgs on a small number of osds, triggering the max
pgs per osd limits.

Avoid this by preventing the pgp_num reductions from getting too far
out in front of the merges themselves.  Basically, cap the delta between
pgp_num and pg_num to the max_misplaced ratio.  We are already limiting
the movement caused by pgp_num by max_misplaced; this effectively just
makes sure that the actual merging (and pg_num reductions) are keeping
up.

Fixes: http://tracker.ceph.com/issues/38786
Signed-off-by: Sage Weil <sage@redhat.com>
src/mgr/DaemonServer.cc