uint32_t fadvise_flags = i.get_fadvise_flags();
ceph::bufferlist bl;
i.decode_bl(bl);
- return _write(ctx, get_onode(op->oid), off, len, bl, fadvise_flags);
+ return _write(
+ ctx, get_onode(op->oid), off, len, std::move(bl),
+ fadvise_flags);
}
break;
case Transaction::OP_TRUNCATE:
i.decode_bl(bl);
std::map<std::string, bufferptr> to_set;
to_set[name] = bufferptr(bl.c_str(), bl.length());
- return _setattrs(ctx, get_onode(op->oid), to_set);
+ return _setattrs(ctx, get_onode(op->oid), std::move(to_set));
}
break;
case Transaction::OP_MKCOLL:
{
ceph::bufferlist bl;
i.decode_bl(bl);
- return _omap_set_header(ctx, get_onode(op->oid), bl);
+ return _omap_set_header(ctx, get_onode(op->oid), std::move(bl));
}
break;
case Transaction::OP_OMAP_RMKEYS:
{
omap_keys_t keys;
i.decode_keyset(keys);
- return _omap_rmkeys(ctx, get_onode(op->oid), keys);
+ return _omap_rmkeys(ctx, get_onode(op->oid), std::move(keys));
}
break;
case Transaction::OP_OMAP_RMKEYRANGE:
string first, last;
first = i.decode_string();
last = i.decode_string();
- return _omap_rmkeyrange(ctx, get_onode(op->oid), first, last);
+ return _omap_rmkeyrange(
+ ctx, get_onode(op->oid),
+ std::move(first), std::move(last));
}
break;
case Transaction::OP_COLL_HINT:
SeaStore::tm_ret SeaStore::_write(
internal_context_t &ctx,
OnodeRef &onode,
- uint64_t offset, size_t len, const ceph::bufferlist& bl,
+ uint64_t offset, size_t len,
+ ceph::bufferlist &&bl,
uint32_t fadvise_flags)
{
logger().debug("{}: {} {} ~ {}",
__func__, *onode, offset, len);
- assert(len == bl.length());
return tm_ertr::now();
}
SeaStore::tm_ret SeaStore::_omap_set_header(
internal_context_t &ctx,
OnodeRef &onode,
- const ceph::bufferlist &header)
+ ceph::bufferlist &&header)
{
logger().debug(
"{}: {} {} bytes",
SeaStore::tm_ret SeaStore::_omap_rmkeys(
internal_context_t &ctx,
OnodeRef &onode,
- const omap_keys_t& keys)
+ omap_keys_t &&keys)
{
logger().debug(
"{} {} {} keys",
return seastar::do_with(
BtreeOMapManager(*transaction_manager),
onode->get_layout().omap_root.get(),
- [&ctx, &onode, &keys, this](
+ std::move(keys),
+ [&ctx, &onode, this](
auto &omap_manager,
- auto &omap_root) {
+ auto &omap_root,
+ auto &keys) {
return crimson::do_for_each(
keys.begin(),
keys.end(),
SeaStore::tm_ret SeaStore::_omap_rmkeyrange(
internal_context_t &ctx,
OnodeRef &onode,
- const std::string &first,
- const std::string &last)
+ std::string first,
+ std::string last)
{
logger().debug(
"{} {} first={} last={}",
SeaStore::tm_ret SeaStore::_setattrs(
internal_context_t &ctx,
OnodeRef &onode,
- std::map<std::string,bufferptr>& aset)
+ std::map<std::string,bufferptr> &&aset)
{
logger().debug("{} onode={}",
__func__, *onode);
tm_ret _write(
internal_context_t &ctx,
OnodeRef &onode,
- uint64_t offset, size_t len, const ceph::bufferlist& bl,
+ uint64_t offset, size_t len,
+ ceph::bufferlist &&bl,
uint32_t fadvise_flags);
tm_ret _omap_set_values(
internal_context_t &ctx,
tm_ret _omap_set_header(
internal_context_t &ctx,
OnodeRef &onode,
- const ceph::bufferlist &header);
+ ceph::bufferlist &&header);
tm_ret _omap_rmkeys(
internal_context_t &ctx,
OnodeRef &onode,
- const omap_keys_t& aset);
+ omap_keys_t &&aset);
tm_ret _omap_rmkeyrange(
internal_context_t &ctx,
OnodeRef &onode,
- const std::string &first,
- const std::string &last);
+ std::string first,
+ std::string last);
tm_ret _truncate(
internal_context_t &ctx,
OnodeRef &onode, uint64_t size);
tm_ret _setattrs(
internal_context_t &ctx,
OnodeRef &onode,
- std::map<std::string,bufferptr>& aset);
+ std::map<std::string,bufferptr> &&aset);
tm_ret _create_collection(
internal_context_t &ctx,
const coll_t& cid, int bits);