${PROJECT_SOURCE_DIR}/src/os/bluestore/FreelistManager.cc
${PROJECT_SOURCE_DIR}/src/os/bluestore/HybridAllocator.cc
${PROJECT_SOURCE_DIR}/src/os/bluestore/StupidAllocator.cc
- ${PROJECT_SOURCE_DIR}/src/os/bluestore/BitmapAllocator.cc)
+ ${PROJECT_SOURCE_DIR}/src/os/bluestore/BitmapAllocator.cc
+ ${PROJECT_SOURCE_DIR}/src/os/memstore/MemStore.cc)
if(WITH_ZBD)
list(APPEND alien_store_srcs
${PROJECT_SOURCE_DIR}/src/os/bluestore/zoned_types.cc
#include "global/global_context.h"
#include "include/Context.h"
#include "os/bluestore/BlueStore.h"
+#include "os/memstore/MemStore.h"
#include "os/ObjectStore.h"
#include "os/Transaction.h"
return 0;
}
+#ifdef WITH_SEASTAR
+int MemStore::omap_get_values(
+ CollectionHandle& ch, ///< [in] Collection containing oid
+ const ghobject_t &oid, ///< [in] Object containing omap
+ const std::optional<std::string> &start_after, ///< [in] Keys to get
+ std::map<std::string, ceph::buffer::list> *out ///< [out] Returned keys and values
+ )
+{
+ dout(10) << __func__ << " " << ch->cid << " " << oid << dendl;
+ Collection *c = static_cast<Collection*>(ch.get());
+ ObjectRef o = c->get_object(oid);
+ if (!o)
+ return -ENOENT;
+ assert(start_after);
+ std::lock_guard lock{o->omap_mutex};
+ for (auto it = o->omap.upper_bound(*start_after);
+ it != std::end(o->omap);
+ ++it) {
+ out->insert(*it);
+ }
+ return 0;
+}
+#endif
+
int MemStore::omap_check_keys(
CollectionHandle& ch, ///< [in] Collection containing oid
const ghobject_t &oid, ///< [in] Object containing omap
const std::set<std::string> &keys, ///< [in] Keys to get
std::map<std::string, ceph::buffer::list> *out ///< [out] Returned keys and values
) override;
+#ifdef WITH_SEASTAR
+ int omap_get_values(
+ CollectionHandle &c, ///< [in] Collection containing oid
+ const ghobject_t &oid, ///< [in] Object containing omap
+ const std::optional<std::string> &start_after, ///< [in] Keys to get
+ std::map<std::string, ceph::buffer::list> *out ///< [out] Returned keys and values
+ ) override;
+#endif
using ObjectStore::omap_check_keys;
/// Filters keys into out which are defined on oid