]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore: Fix read_main_bdev_label
authorAdam Kupczyk <akupczyk@ibm.com>
Tue, 30 Jan 2024 12:54:26 +0000 (12:54 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Mon, 22 Jul 2024 12:28:50 +0000 (12:28 +0000)
When valid label with new epoch is found,
all that we have marked as good before are released.

Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
src/os/bluestore/BlueStore.cc

index 3e513b3b4e13e0ed762a71847125a15a09650f0e..a518965742cebae3809a33df78233d5b837cb7a1 100644 (file)
@@ -6695,9 +6695,13 @@ int BlueStore::_read_main_bdev_label(
             *out_is_multi = true;
           }
           if(out_valid_positions) {
-            out_valid_positions->push_back(position);
+            // clear out old versions
+            out_valid_positions->clear();
           }
         }
+        if(v == epoch && out_valid_positions) {
+          out_valid_positions->push_back(position);
+        }
       }
     } else if (r == 1) {
       // tried to read but no disk