Fixes a bug in _collection_move_rename replays.
Signed-off-by: Samuel Just <sam.just@inktank.com>
_inject_failure();
+ lfn_close(fd);
+ fd = FDRef();
+
+ if (r == 0)
+ r = lfn_unlink(oldcid, oldoid, spos, true);
+
+ if (r == 0)
+ r = lfn_open(c, o, 0, &fd);
+
// close guard on object so we don't do this again
- if (r == 0) {
+ if (r == 0)
_close_replay_guard(**fd, spos);
- }
+
lfn_close(fd);
}
+ dout(10) << __func__ << " " << c << "/" << o << " from " << oldcid << "/" << oldoid
+ << " = " << r << dendl;
+ return r;
+
out_rm_src:
// remove source
if (_check_replay_guard(oldcid, oldoid, spos) > 0) {