]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd: simplify osdmap tracking of osd up/down epochs; fix pg build_prior logic
authorSage Weil <sage@newdream.net>
Mon, 24 Nov 2008 19:30:17 +0000 (11:30 -0800)
committerSage Weil <sage@newdream.net>
Mon, 24 Nov 2008 21:26:09 +0000 (13:26 -0800)
commit4823b0719fe898a83e8c55f82b2f884b2df9040c
treec0f7a51ee4d48667820efd97db4ee7e648b06ee6
parent3ef312f4f5e3a0260b3c52945ae4616a6a04616b
osd: simplify osdmap tracking of osd up/down epochs; fix pg build_prior logic

Use a single struct to track all of our osd up/down info.  Include
down_at, the epoch we last marked the osd down.

Fix PG::build_prior to require that the osd was clean through the _entire_
interval in question.

In monitor, adjust new clean interval foward to down_at-1 if the up_from
matches the interval we mounted.  That is, if the OSD shut down cleanly,
it obviously remained clean at least until we marked it down in the map.
src/mon/OSDMonitor.cc
src/osd/OSDMap.h
src/osd/PG.cc