if (ret < 0)
goto done_err;
if (created_obj) {
- ret = rgwstore->delete_obj(s->obj_ctx, s->user.user_id, obj);
+ ret = rgwstore->delete_obj(NULL, s->user.user_id, obj, false);
if (ret < 0)
goto done;
}
if (r < 0)
return r;
r = io_ctx.operate(oid, &op);
+
+ if (r >= 0 && bucket.marker.size()) {
+ uint64_t epoch = io_ctx.get_last_version();
+ r = complete_update_index_del(bucket, obj.object, tag, epoch);
+ }
} else {
librados::AioCompletion *completion = rados->aio_create_completion(NULL, NULL, NULL);
r = io_ctx.aio_operate(obj.object, completion, &op);
atomic_write_finish(state, r);
- if (r >= 0 && bucket.marker.size()) {
- uint64_t epoch = io_ctx.get_last_version();
- r = complete_update_index_del(bucket, obj.object, tag, epoch);
- }
-
if (r < 0)
return r;