問題描述
Bucket不存在中繼資料索引庫。
問題原因
您發起了DoMetaQuery或GetMetaQueryStatus請求,但是請求的目標Bucket沒有開啟中繼資料管理功能。
問題樣本
例如,你發起了DoMetaQuery請求,但是請求的Bucket(oss-example)未開啟中繼資料管理功能,導致請求錯誤。
POST /?metaQuery&comp=query HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<MetaQuery>
<NextToken></NextToken>
<MaxResults>5</MaxResults>
<Query>{"Field": "Size","Value": "1048576","Operation": "gt"}</Query>
<Sort>Size</Sort>
<Order>asc</Order>
<Aggregations>
<Aggregation>
<Field>Size</Field>
<Operation>sum</Operation>
</Aggregation>
<Aggregation>
<Field>Size</Field>
<Operation>max</Operation>
</Aggregation>
</Aggregations>
</MetaQuery>解決方案
通過GetMetaQueryStatus介面查詢Bucket當前中繼資料索引庫的構建狀態。
GET /?metaQuery HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Date: Mon, 26 Jul 2021 13:08:38 GMT Authorization: OSS qn6q**************:77Dv****************如果返回404錯誤,表明該Bucket未開啟中繼資料管理功能。
調用OpenMetaQuery請求為Bucket開啟中繼資料管理功能並等待中繼資料索引庫建立成功後重試。