Just before sending an op, prepare_mutate_op() is called, creating a
new Op. prepare_read_op() already copied over all the out-params
correctly, but for write operations the individual op return value
pointers were not copied, so they would not be filled in. With this
fixed, librados users can get the per-op return codes again.
Partially fixes: #6483
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
inode that has an outdated backtrace attribute will get updated when
the inode itself is modified. This will result in some extra workload
after a legacy CephFS file system is upgraded.
+
+* The per-op return code in librados' ObjectWriteOperation interface
+ is now filled in.
o->priority = op.priority;
o->mtime = mtime;
o->snapc = snapc;
+ o->out_rval.swap(op.out_rval);
return o;
}
tid_t mutate(const object_t& oid, const object_locator_t& oloc,