From: Sage Weil Date: Sun, 4 Mar 2018 21:55:22 +0000 (-0600) Subject: osd/PrimaryLogPG: update missing_loc on peer recover X-Git-Tag: v12.2.9~81^2~5 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=507d91a5f32e2d40ffe459244be97c661676c8c0;p=ceph.git osd/PrimaryLogPG: update missing_loc on peer recover The MissingLoc structure already tracks locations of any missing object on any acting OSD, and is updated on_local_recover and on_global_recover. Update it on_peer_recover too so that the loc information (and derivative missing_by_count info) is correct. Signed-off-by: Sage Weil (cherry picked from commit 214ff7b0f3a786dce8bd36ca39a8f6143783a84f) --- diff --git a/src/osd/PrimaryLogPG.cc b/src/osd/PrimaryLogPG.cc index 80ac5e3c388..8df5898a991 100644 --- a/src/osd/PrimaryLogPG.cc +++ b/src/osd/PrimaryLogPG.cc @@ -502,6 +502,7 @@ void PrimaryLogPG::on_peer_recover( publish_stats_to_osd(); // done! peer_missing[peer].got(soid, recovery_info.version); + missing_loc.add_location(soid, peer); } void PrimaryLogPG::begin_peer_recover(