]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd: fix do not always clear DEGRADED/set CLEAN on recovery finish
authorSage Weil <sage@newdream.net>
Wed, 15 Feb 2012 23:20:35 +0000 (15:20 -0800)
committerSage Weil <sage@newdream.net>
Wed, 15 Feb 2012 23:20:35 +0000 (15:20 -0800)
commit82eceb9a3bd978bb96df5803b6dc7935b88a56ee
tree9bbd80b901561e7948260f3364682b9bf403d449
parent1a994bed63999d14485c7b9617e707b593608165
osd: fix do not always clear DEGRADED/set CLEAN on recovery finish

Clean means we have exactly the right number of replicas and recovery is
complete.  Degraded means we do not have enough replicas, either because
recovery is in progress, or because acting is too small.

A consequence is that if we have a PG with len(up) == 1 but a pg_temp
mapping so that len(acting) == 2, it will be active and not clean.

Fixes: #2060
Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
src/osd/PG.cc