From dca1257ab13e7871f25ef1c8179e45c199b252f7 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 29 Nov 2017 16:56:38 -0600 Subject: [PATCH] osd/PG: flush osr before listing scrub objects We need to make sure previous transactions are readable before we list objects. This avoids races like, say, - ecbackend rolls forward and removes a rollback object - bluestore delays the txn apply due to some prior op - scrub lists objects, sees rollback object it doesn't expect Signed-off-by: Sage Weil --- src/osd/PG.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/osd/PG.cc b/src/osd/PG.cc index cffa6319673..ad6faf00c10 100644 --- a/src/osd/PG.cc +++ b/src/osd/PG.cc @@ -4204,6 +4204,8 @@ int PG::build_scrub_map_chunk( map.valid_through = info.last_update; + osr->flush(); + // objects vector ls; vector rollback_obs; -- 2.47.3