From 228e857eea18ee13bfc3024aaef5f79d0598d4bc Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Wed, 4 May 2011 14:30:51 -0700 Subject: [PATCH] OSD: assert contents exist when erasing from last_scrub_map. Insert PG into last_scrub_map on creation so that this doesn't break right away. Signed-off-by: Greg Farnum --- src/osd/OSD.cc | 2 ++ src/osd/OSD.h | 1 + 2 files changed, 3 insertions(+) diff --git a/src/osd/OSD.cc b/src/osd/OSD.cc index 6ca4e72f90f6f..cd7e363eaf765 100644 --- a/src/osd/OSD.cc +++ b/src/osd/OSD.cc @@ -1011,6 +1011,8 @@ PG *OSD::_create_lock_new_pg(pg_t pgid, vector& acting, ObjectStore::Transa pg->write_info(t); pg->write_log(t); + reg_last_pg_scrub(pg->info.pgid, pg->info.history.last_scrub_stamp); + dout(7) << "_create_lock_new_pg " << *pg << dendl; return pg; } diff --git a/src/osd/OSD.h b/src/osd/OSD.h index 40ff50644ba19..acfb062966a2d 100644 --- a/src/osd/OSD.h +++ b/src/osd/OSD.h @@ -836,6 +836,7 @@ protected: void unreg_last_pg_scrub(pg_t pgid, utime_t t) { Mutex::Locker l(sched_scrub_lock); pair p(t, pgid); + assert(last_scrub_pg.count(p)); last_scrub_pg.erase(p); } -- 2.39.5