]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore: misc cleanups
authorYingxin Cheng <yingxin.cheng@intel.com>
Thu, 21 Jul 2022 08:58:47 +0000 (16:58 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Fri, 22 Jul 2022 02:47:25 +0000 (10:47 +0800)
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/crimson/os/seastore/async_cleaner.cc
src/crimson/os/seastore/cached_extent.h
src/crimson/os/seastore/seastore.cc
src/crimson/os/seastore/segment_manager_group.h

index 28b1a16453a6a94bf14590dde4d0a04883cd0c57..df146d390754469bda74b12d038802eb144e64ac 100644 (file)
@@ -1168,7 +1168,7 @@ AsyncCleaner::mount_ret AsyncCleaner::mount()
 }
 
 AsyncCleaner::scan_extents_ret AsyncCleaner::scan_no_tail_segment(
-  const segment_header_theader,
+  const segment_header_t &segment_header,
   segment_id_t segment_id)
 {
   return seastar::do_with(
@@ -1177,9 +1177,9 @@ AsyncCleaner::scan_extents_ret AsyncCleaner::scan_no_tail_segment(
       paddr_t::make_seg_paddr(segment_id, 0)
     }),
     SegmentManagerGroup::found_record_handler_t(
-      [this, segment_id, segment_header=header](
+      [this, segment_id, segment_header](
         record_locator_t locator,
-        const record_group_header_theader,
+        const record_group_header_t &record_group_header,
         const bufferlist& mdbuf
       ) mutable -> SegmentManagerGroup::scan_valid_records_ertr::future<>
     {
@@ -1187,16 +1187,16 @@ AsyncCleaner::scan_extents_ret AsyncCleaner::scan_no_tail_segment(
       if (segment_header.get_type() == segment_type_t::OOL) {
         DEBUG("out-of-line segment {}, decodeing {} records",
           segment_id,
-          header.records);
+          record_group_header.records);
       } else {
         DEBUG("inline segment {}, decodeing {} records",
           segment_id,
-          header.records);
+          record_group_header.records);
         auto maybe_record_deltas_list = try_decode_deltas(
-          header, mdbuf, locator.record_block_base);
+          record_group_header, mdbuf, locator.record_block_base);
         if (!maybe_record_deltas_list) {
           ERROR("unable to decode deltas for record {} at {}",
-                header, locator);
+                record_group_header, locator);
           return crimson::ct_error::input_output_error::make();
         }
         for (auto &record_deltas : *maybe_record_deltas_list) {
@@ -1210,7 +1210,8 @@ AsyncCleaner::scan_extents_ret AsyncCleaner::scan_no_tail_segment(
         }
       }
 
-      auto maybe_headers = try_decode_record_headers(header, mdbuf);
+      auto maybe_headers = try_decode_record_headers(
+          record_group_header, mdbuf);
       if (!maybe_headers) {
         // This should be impossible, we did check the crc on the mdbuf
         ERROR("unable to decode record headers for record group {}",
@@ -1218,32 +1219,32 @@ AsyncCleaner::scan_extents_ret AsyncCleaner::scan_no_tail_segment(
         return crimson::ct_error::input_output_error::make();
       }
 
-      for (autoheader : *maybe_headers) {
-        auto modify_time = mod_to_timepoint(header.modify_time);
-        if (header.extents == 0 || modify_time != NULL_TIME) {
+      for (auto &record_header : *maybe_headers) {
+        auto modify_time = mod_to_timepoint(record_header.modify_time);
+        if (record_header.extents == 0 || modify_time != NULL_TIME) {
           segments.update_modify_time(
-              segment_id, modify_time, header.extents);
+              segment_id, modify_time, record_header.extents);
         } else {
-          ERROR("illegal modify time {}", header);
+          ERROR("illegal modify time {}", record_header);
           return crimson::ct_error::input_output_error::make();
         }
       }
       return seastar::now();
     }),
-    [this, header](auto &cursor, auto &handler)
+    [this, segment_header](auto &cursor, auto &handler)
   {
     return sm_group->scan_valid_records(
       cursor,
-      header.segment_nonce,
+      segment_header.segment_nonce,
       segments.get_segment_size(),
       handler).discard_result();
-  }).safe_then([this, segment_id, header] {
+  }).safe_then([this, segment_id, segment_header] {
     init_mark_segment_closed(
       segment_id,
-      header.segment_seq,
-      header.type,
-      header.category,
-      header.generation);
+      segment_header.segment_seq,
+      segment_header.type,
+      segment_header.category,
+      segment_header.generation);
   });
 }
 
index 5054aea8f65aabd9cfd76c50b0ece5905a352943..a4dfd68c246280abc6bde3f3735b8b04ef4f55c9 100644 (file)
@@ -17,7 +17,6 @@
 
 namespace crimson::os::seastore {
 
-class ool_record_t;
 class Transaction;
 class CachedExtent;
 using CachedExtentRef = boost::intrusive_ptr<CachedExtent>;
@@ -557,7 +556,6 @@ protected:
     }
   }
 
-  friend class crimson::os::seastore::ool_record_t;
   friend class crimson::os::seastore::SegmentedAllocator;
   friend class crimson::os::seastore::TransactionManager;
   friend class crimson::os::seastore::ExtentPlacementManager;
index 125a374edde32fcb76fc3f1579784777e56734ca..eba1529d737e0d2af16897c51c3a78053ca9efca 100644 (file)
@@ -1183,7 +1183,7 @@ SeaStore::tm_ret SeaStore::_do_transaction_step(
       }
       case Transaction::OP_SETALLOCHINT:
       {
-        WARN("OP_SETALLOCHINT ignored as not-implemented-yet");
+        // TODO
         return tm_iertr::now();
       }
       default:
index d4d7d24e5672bc596e5bfe35aef0c6f2d0235244..3dccdf9213408654eb302030c72918f920b739dc 100644 (file)
@@ -92,7 +92,7 @@ public:
   read_segment_tail_ret  read_segment_tail(segment_id_t segment);
 
   using read_ertr = SegmentManager::read_ertr;
-  using scan_valid_records_ertr = read_ertr::extend<crimson::ct_error::enodata>;
+  using scan_valid_records_ertr = read_ertr;
   using scan_valid_records_ret = scan_valid_records_ertr::future<
     size_t>;
   using found_record_handler_t = std::function<