]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/osd/osd_operations/snaptrim_event: encapsulate new snaps in the
authorXuehan Xu <xuxuehan@qianxin.com>
Sun, 18 Aug 2024 04:43:32 +0000 (12:43 +0800)
committerMatan Breizman <mbreizma@redhat.com>
Wed, 4 Sep 2024 09:58:59 +0000 (09:58 +0000)
pglog entry

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
src/crimson/osd/osd_operations/snaptrim_event.cc
src/crimson/osd/osd_operations/snaptrim_event.h

index a8001e75c4c8f7427bdf50d60e5955ccfa46bf30..3a3645b9cf6fd2cd6025aac5e8f1e55334cce93a 100644 (file)
@@ -263,7 +263,7 @@ SnapTrimObjSubEvent::adjust_snaps(
     ghobject_t{coid, ghobject_t::NO_GEN, shard_id_t::NO_SHARD},
     OI_ATTR,
     bl);
-  add_log_entry(
+  auto &loge = add_log_entry(
     pg_log_entry_t::MODIFY,
     coid,
     obc->obs.oi.prior_version,
@@ -271,8 +271,10 @@ SnapTrimObjSubEvent::adjust_snaps(
     osd_reqid_t(),
     obc->obs.oi.mtime,
     0);
-  return OpsExecuter::snap_map_modify(
-    coid, new_snaps, pg->snap_mapper, pg->osdriver, txn);
+  bufferlist snapsbl;
+  encode(new_snaps, snapsbl);
+  loge.snaps.swap(snapsbl);
+  return interruptor::now();
 }
 
 void SnapTrimObjSubEvent::update_head(
index 0e6c1e9d8fc7301e1629d6376e3d2f515e4bb75a..9a656a451bd3f87ec94424326eb42486cef7fc5b 100644 (file)
@@ -134,7 +134,7 @@ private:
   remove_or_update_iertr::future<ceph::os::Transaction>
   remove_or_update(ObjectContextRef obc, ObjectContextRef head_obc);
 
-  void add_log_entry(
+  pg_log_entry_t& add_log_entry(
     int _op,
     const hobject_t& _soid,
     const eversion_t& pv,
@@ -152,6 +152,7 @@ private:
       mt,
       return_code);
     osd_op_p.at_version.version++;
+    return log_entries.back();
   }
 
   Ref<PG> pg;