]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore/lba_manager: drop the impossible case that the insert key exists...
authorYingxin Cheng <yingxin.cheng@intel.com>
Mon, 30 Aug 2021 07:50:06 +0000 (15:50 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Mon, 30 Aug 2021 08:06:25 +0000 (16:06 +0800)
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/crimson/os/seastore/lba_manager/btree/lba_btree.cc

index 6adb0fbbd5224c6c3e389892e7c68660bfa318d2..eb53d8d0803306b2c504cb0c3e3167b7ccf44342 100644 (file)
@@ -181,19 +181,13 @@ LBABtree::insert_ret LBABtree::insert(
              ret.leaf.node = mut->cast<LBALeafNode>();
            }
            auto iter = ret.leaf.node->lower_bound(laddr);
-           if (iter != ret.leaf.node->end() && iter->get_key() == laddr) {
-             return insert_ret(
-               interruptible::ready_future_marker{},
-               std::make_pair(ret, false));
-           } else {
-             ret.leaf.pos = iter->get_offset();
-             assert(laddr >= ret.leaf.node->get_meta().begin &&
-                    laddr < ret.leaf.node->get_meta().end);
-             ret.leaf.node->insert(iter, laddr, val);
-             return insert_ret(
-               interruptible::ready_future_marker{},
-               std::make_pair(ret, true));
-           }
+           assert(iter == ret.leaf.node->end() || iter->get_key() > laddr);
+           assert(laddr >= ret.leaf.node->get_meta().begin &&
+                  laddr < ret.leaf.node->get_meta().end);
+           ret.leaf.node->insert(iter, laddr, val);
+           return insert_ret(
+             interruptible::ready_future_marker{},
+             std::make_pair(ret, true));
          });
        }
       });