]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/osd/osd_operations/pg_advance_map: 'from' epoch may vary between PGS explanation 51961/head
authorMatan Breizman <mbreizma@redhat.com>
Tue, 20 Jun 2023 17:51:52 +0000 (17:51 +0000)
committerMatan Breizman <mbreizma@redhat.com>
Tue, 20 Jun 2023 18:10:04 +0000 (18:10 +0000)
Signed-off-by: Matan Breizman <mbreizma@redhat.com>
src/crimson/osd/osd_operations/pg_advance_map.cc

index cd2ef615b417e53f61fd0747fa8c01900032c9b3..7a9b0ffb45fcd352b54cef86ca7bbd9007cd905d 100644 (file)
@@ -65,6 +65,15 @@ seastar::future<> PGAdvanceMap::start()
   return enter_stage<>(
     pg->peering_request_pg_pipeline.process
   ).then([this] {
+    /*
+     * PGAdvanceMap is scheduled at pg creation and when
+     * broadcasting new osdmaps to pgs. We are not able to serialize
+     * between the two different PGAdvanceMap callers since a new pg
+     * will get advanced to the latest osdmap at it's creation.
+     * As a result, we may need to adjust the PGAdvance operation
+     * 'from' epoch.
+     * See: https://tracker.ceph.com/issues/61744
+     */
     from = pg->get_osdmap_epoch();
     auto fut = seastar::now();
     if (do_init) {