]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore: more debugging
authorSamuel Just <sjust@redhat.com>
Sat, 20 Mar 2021 03:09:18 +0000 (20:09 -0700)
committerSamuel Just <sjust@redhat.com>
Wed, 24 Mar 2021 05:41:11 +0000 (22:41 -0700)
Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/os/seastore/journal.cc
src/crimson/os/seastore/journal.h
src/crimson/os/seastore/lba_manager/btree/btree_lba_manager.cc
src/crimson/os/seastore/segment_cleaner.cc
src/crimson/os/seastore/transaction_manager.cc

index f15e890193926245845fc0195e791acea25993ae..f2b5a7b97ee41147f9ad310a0b7f161aa451073f 100644 (file)
@@ -28,6 +28,16 @@ std::ostream &operator<<(std::ostream &out, const segment_header_t &header)
             << ")";
 }
 
+
+std::ostream &operator<<(std::ostream &out, const extent_info_t &info)
+{
+  return out << "extent_info_t("
+            << " type: " << info.type
+            << " addr: " << info.addr
+            << " len: " << info.len
+            << ")";
+}
+
 segment_nonce_t generate_nonce(
   segment_seq_t seq,
   const seastore_meta_t &meta)
index 8def2be3a4a2dddadd1f61d45b701937f55efcdd..9031d9b1acb95852182e254594849f2d5d390195 100644 (file)
@@ -91,6 +91,7 @@ struct extent_info_t {
     DENC_FINISH(p);
   }
 };
+std::ostream &operator<<(std::ostream &out, const extent_info_t &header);
 
 /**
  * Callback interface for managing available segments
index 8509825baf6787d33fb79a70650ea4bf25cb896f..aa9fea07904dd708bafd4f888663671c4c475c73 100644 (file)
@@ -346,10 +346,18 @@ BtreeLBAManager::rewrite_extent_ret BtreeLBAManager::rewrite_extent(
   CachedExtentRef extent)
 {
   if (extent->has_been_invalidated()) {
-    logger().debug("BTreeLBAManager::rewrite_extent: {} is invalid, returning eagain");
+    logger().debug(
+      "BTreeLBAManager::rewrite_extent: {} is invalid, returning eagain",
+      *extent
+    );
     return crimson::ct_error::eagain::make();
   }
 
+  logger().debug(
+    "{}: rewriting {}", 
+    __func__,
+    *extent);
+
   if (extent->is_logical()) {
     auto lextent = extent->cast<LogicalCachedExtent>();
     cache.retire_extent(t, extent);
index d47ab2124711e32f7d25b181eb3ac010609c4f42..fe8954a0bf759b3c68e1f9a764dbadcb2583c020 100644 (file)
@@ -305,6 +305,9 @@ SegmentCleaner::gc_reclaim_space_ret SegmentCleaner::gc_reclaim_space()
       std::move(_extents),
       [this](auto &extents) {
        return repeat_eagain([this, &extents]() mutable {
+         logger().debug(
+           "SegmentCleaner::gc_reclaim_space: processing {} extents",
+           extents.size());
          return seastar::do_with(
            make_transaction(),
            [this, &extents](auto &t) mutable {
index 3e530869349276150b9fc9d3d553aec2244dd99e..15c1af7c94792b3302afe7b34bb498765ed66c6e 100644 (file)
@@ -290,6 +290,13 @@ TransactionManager::get_extent_if_live_ret TransactionManager::get_extent_if_liv
   laddr_t laddr,
   segment_off_t len)
 {
+  logger().debug(
+    "TransactionManager::get_extent_if_live:"
+    " type {}, addr {}, laddr {}, len {}",
+    type,
+    addr,
+    laddr,
+    len);
   CachedExtentRef ret;
   auto status = cache->get_extent_if_cached(t, addr, &ret);
   if (status != Transaction::get_extent_ret::ABSENT) {