问题描述
对处于解冻中状态的Object提交RestoreObject请求时,不支持降低解冻优先级。
问题原因
您对某个冷归档类型的Object发起了RestoreObject请求,且该Object处于解冻中的状态。当您对解冻中的任务修改解冻优先级时,指定的解冻优先级低于当前的优先级,将返回请求错误。
解冻优先级通过Tier参数指定,不同解冻优先级的首字节取回时间如下:
高优先级(Expedited):表示1小时内完成解冻。
标准(Standard):表示2~5小时内完成解冻。如果不传入JobParameters节点,则默认为Standard。
批量(Bulk):表示5~12小时内完成解冻。
对进行中的解冻任务修改优先级时,只能提高解冻优先级,不支持降低解冻优先级。假设正在解冻中的任务优先级选择了Standard,如果希望修改解冻优先级,则仅支持修改为Expedited。
问题示例
例如,您发起了如下RestoreObject请求。
POST /coldarchiveobject?restore HTTP/1.1
Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com
Authorization: AWS qn6q**************:77Dv****************
Date: Tue, 21 Apr 2020 11:09:19 GMT
<RestoreRequest>
<Days>2</Days>
<JobParameters>
<Tier>Standard</Tier>
</JobParameters>
</RestoreRequest>
解冻任务尚未完成时,重新发起了以下请求。
POST /coldarchiveobject?restore HTTP/1.1
Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com
Authorization: AWS qn6q**************:77Dv****************
Date: Tue, 21 Apr 2020 11:09:19 GMT
<RestoreRequest>
<Days>2</Days>
<JobParameters>
<Tier>Bulk</Tier>
</JobParameters>
</RestoreRequest>
后一次请求中指定的优先级为Bulk,低于前一次请求中指定的优先级Standard,导致请求错误。
解决方案
确保发起的RestoreObject请求XML中,通过Tier参数指定的优先级高于当前解冻优先级。
POST /coldarchiveobject?restore HTTP/1.1
Host: cold-archive-bucket.oss-cn-hangzhou.aliyuncs.com
Authorization: OSS qn6q**************:77Dv****************
Date: Tue, 21 Apr 2020 11:09:19 GMT
<RestoreRequest>
<Days>2</Days>
<JobParameters>
<Tier>Expedited</Tier>
</JobParameters>
</RestoreRequest>