]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd: trigger discover_all_missing after replay delay
authorSage Weil <sage.weil@dreamhost.com>
Tue, 1 Mar 2011 00:05:08 +0000 (16:05 -0800)
committerSage Weil <sage.weil@dreamhost.com>
Tue, 1 Mar 2011 00:05:08 +0000 (16:05 -0800)
commit19bcd747b452b79c80744620e635f036bfc1b738
tree2a4dd4a9bf22c15d71f7e05e3d3aceef29db589a
parentee534522ea90cfca217301faed558be6f1ba712a
osd: trigger discover_all_missing after replay delay

We were calling discover_all_missing only when we went immediately active,
not after we were in the replay state (which triggers from a timer event
that calls OSD::activate_pg().  Move the call into PG::activate() so that
we catch both callers.

This requires passing in a query_map from the caller.  While we're at it,
clean up some other instances where we are defining a new query_map
deep within the call tree.

Fixes: #847 (I hope)
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
src/osd/OSD.cc
src/osd/OSD.h
src/osd/PG.cc
src/osd/PG.h