Problem description
The versionId field in the x-oss-copy-source request header cannot be specified as a delete marker.
Causes
You initiated a CopyObject request, but the version specified by the versinId field in the x-oss-copy-source request header is a delete marker. However, this operation does not allow you to copy delete markers.
Examples
In the following CopyObject request, the versinId field in the x-oss-copy-source request header indicates the version of the delete marker.
PUT /dest-object-example HTTP/1.1
Host: versioning-copy.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 09 Apr 2019 03:45:32 GMT
Authorization: OSS qn6q**************:77Dv****************
x-oss-copy-source: /versioning-copy-source/source-object?versionId=CAEQOBiBgMD5u_34sRgiIGI0NjcwNzRmYmE4ZTQ2YWViZTkxMDZjNDg4Yzhl****
Solutions
Make sure that the version specified by the versionId field is not a delete marker when you send a CopyObject request to copy a specified version of an object.
PUT /destobject.png HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 09 Apr 2019 03:45:32 GMT
Authorization: OSS qn6q**************:77Dv****************
x-oss-copy-source: /src-example/srcobject.png?versionId=CAEQNRiBgICv8uaA0BYiIDliZDc3MTc1NjE5MjRkMDI4ZGU4MTZkYjY1ZDgy****