]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/PGLog: set dirty_to to max to avoid partial writes
authormyoungwon oh <ohmyoungwon@gmail.com>
Sat, 14 Feb 2026 08:07:39 +0000 (17:07 +0900)
committermyoungwon oh <ohmyoungwon@gmail.com>
Tue, 17 Mar 2026 08:04:55 +0000 (17:04 +0900)
Signed-off-by: Myoungwon Oh <ohmyoungwon@gmail.com>
src/osd/PGLog.cc

index f3b11876adca96dc788b7a680b1033395a88fa8d..3e5a8dfea812073dd421f6af8896a9620d0fee69 100644 (file)
@@ -526,9 +526,16 @@ void PGLog::merge_log(pg_info_t &oinfo, pg_log_t&& olog, pg_shard_t fromosd,
     changed = true;
   }
 
+  if (changed && pool.is_crimson()) {
+    mark_dirty_to(eversion_t::max());
+  }
+
   // now handle dups
   if (merge_log_dups(olog)) {
     changed = true;
+    if (pool.is_crimson()) {
+      mark_dirty_to_dups(eversion_t::max());
+    }
   }
 
   dout(10) << "merge_log result " << log << " " << missing <<