]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: turn swift COPY into PUT
authorYehuda Sadeh <yehuda@inktank.com>
Mon, 21 Oct 2013 21:17:12 +0000 (14:17 -0700)
committerYehuda Sadeh <yehuda@inktank.com>
Mon, 21 Oct 2013 23:25:19 +0000 (16:25 -0700)
commitcbf8f9a51737e7d89fb0ec0832b50fd47c35b08d
treee201483a649489be68f103bbf750efded696731c
parent1376d2379ac2ac3a4fe17fd1bbcf2a8588c7459b
rgw: turn swift COPY into PUT

Fixes: #6606
The swift COPY operation is unique in a sense that it's a write
operation that has its destination not set by the URI target, but by a
different HTTP header. This is problematic as there are some hidden
assumptions in the code that the specified bucket/object in the URI is
the operation target. E.g., certain initialization functions, quota,
etc. Instead of creating a specialized code everywhere for this case
just turn it into a regular copy operation, that is, a PUT with
a specified copy source.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
src/rgw/rgw_common.h
src/rgw/rgw_op.cc
src/rgw/rgw_op.h
src/rgw/rgw_rest.cc
src/rgw/rgw_rest_swift.cc