]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/onode-staged-tree: misc fixes to integrate interruptive-future 42514/head
authorYingxin Cheng <yingxin.cheng@intel.com>
Tue, 3 Aug 2021 03:52:41 +0000 (11:52 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Tue, 3 Aug 2021 03:53:53 +0000 (11:53 +0800)
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/crimson/os/seastore/onode_manager/staged-fltree/node_extent_manager/seastore.h
src/crimson/os/seastore/onode_manager/staged-fltree/tree.h

index 70e4b4d517712b349f92d363e8ac88288cc13bc5..821b5561d4e79733fbbfd794c49276eb791d20d4 100644 (file)
@@ -113,12 +113,6 @@ class SeastoreNodeExtentManager final: public TransactionManagerHandle {
     ).si_then([addr, &t](auto&& e) -> read_iertr::future<NodeExtentRef> {
       TRACET("read {}B at {:#x} -- {}",
              t, e->get_length(), e->get_laddr(), *e);
-      if (t.is_conflicted()) {
-        ERRORT("transaction conflict detected on extent read {}", t, *e);
-       assert(t.is_conflicted());
-       return crimson::ct_error::eagain::make();
-      }
-      assert(e->is_valid());
       assert(e->get_laddr() == addr);
       std::ignore = addr;
       return read_iertr::make_ready_future<NodeExtentRef>(e);
index 8c62ec9e535d4bfda571df04691f19f1afa01ebb..ae4c40e3dfb5620922aebd407ecd7c3b22b8dc01 100644 (file)
@@ -121,6 +121,7 @@ class Btree {
       auto this_obj = *this;
       return p_cursor->erase<FORCE_MERGE>(p_tree->get_context(t), true
       ).si_then([this_obj, this] (Ref<tree_cursor_t> next_cursor) {
+        assert(p_cursor->is_invalid());
         if (next_cursor) {
           assert(!next_cursor->is_end());
           return Cursor{p_tree, next_cursor};