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>