]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
OSD: do deep_scrub for repair
authorSamuel Just <sam.just@inktank.com>
Fri, 18 Jan 2013 22:35:51 +0000 (14:35 -0800)
committerSage Weil <sage@inktank.com>
Wed, 23 Jan 2013 14:22:26 +0000 (06:22 -0800)
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
(cherry picked from commit 0cb760f31b0cb26f022fe8b9341e41cd5351afac)

src/osd/OSD.cc

index b224eab6df04a5264bb6d51c7608e61e44d7bd91..f9c95d855521d4f8539e4bd71fa1891bd1c73336 100644 (file)
@@ -3493,7 +3493,7 @@ void OSD::handle_scrub(MOSDScrub *m)
       if (pg->is_primary()) {
        pg->unreg_next_scrub();
        pg->scrubber.must_scrub = true;
-       pg->scrubber.must_deep_scrub = m->deep;
+       pg->scrubber.must_deep_scrub = m->deep || m->repair;
        pg->scrubber.must_repair = m->repair;
        pg->reg_next_scrub();
        dout(10) << "marking " << *pg << " for scrub" << dendl;
@@ -3510,7 +3510,7 @@ void OSD::handle_scrub(MOSDScrub *m)
        if (pg->is_primary()) {
          pg->unreg_next_scrub();
          pg->scrubber.must_scrub = true;
-         pg->scrubber.must_deep_scrub = m->deep;
+         pg->scrubber.must_deep_scrub = m->deep || m->repair;
          pg->scrubber.must_repair = m->repair;
          pg->reg_next_scrub();
          dout(10) << "marking " << *pg << " for scrub" << dendl;