]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore: Add progress logging to transaction processing 67024/head
authorAishwarya Mathuria <amathuri@redhat.com>
Wed, 21 Jan 2026 11:31:20 +0000 (11:31 +0000)
committerAishwarya Mathuria <amathuri@redhat.com>
Wed, 4 Feb 2026 12:11:34 +0000 (17:41 +0530)
Log "op X of Y" during the transaction iteration in do_transaction_no_callbacks
to improve observability during transactions.

Signed-off-by: Aishwarya Mathuria <amathuri@redhat.com>
src/crimson/os/seastore/seastore.cc

index 4f3ed7bafd71ba2d2a056706ec98a18ea53d1623..6a03ab801bd2da9efc6f622d6283c9bebcc5cf27 100644 (file)
@@ -1493,11 +1493,22 @@ seastar::future<> SeaStore::Shard::do_transaction_no_callbacks(
 
       ctx.reset_preserve_handle(*transaction_manager);
       std::vector<OnodeRef> onodes(ctx.iter.objects.size());
+
+      // Get the total number of operations from the transaction
+      const size_t total_ops = ctx.ext_transaction.get_num_ops();
+      size_t current_op = 0;
+
       while (ctx.iter.have_op()) {
+        current_op++;
+
+        DEBUGT("processing op {} of {} for cid={}",
+               t, current_op, total_ops, ctx.ch->get_cid());
        co_await _do_transaction_step(
          ctx, ctx.ch, onodes, ctx.iter);
       }
 
+      DEBUGT("completed all {} ops for cid={}",
+             t, total_ops, ctx.ch->get_cid());
       co_await transaction_manager->submit_transaction(*ctx.transaction);
     })
   ).handle_error(