ChenSammi commented on code in PR #6348:
URL: https://github.com/apache/ozone/pull/6348#discussion_r1522617367
##########
hadoop-hdds/docs/content/interface/ReconApi.zh.md:
##########
@@ -222,7 +222,497 @@ Recon API v1 是一组 HTTP 端点,可以帮助您了解 Ozone 集群的当前
回传处于给定状态的容器的 UnhealthyContainerMetadata 对象。
不健康的容器状态可能为`MISSING`, `MIS_REPLICATED`, `UNDER_REPLICATED`,`OVER_REPLICATED`。
响应结构与`/containers/unhealthy`相同。
-
+
+
+### GET /api/v1/containers/mismatch
+
+**回传**
+
+回传 OM 和 SCM 之间不匹配容器的列表。
+* 容器存在于 OM 中,但不存在于 SCM 中。
+* 容器存在于 SCM 中,但不存在于 OM 中。
+
+```json
+[
+ {
+ "containerId" : 1,
+ "numberOfKeys" : 3,
+ "pipelines" : [
+ "pipelineId" : "1423ghjds832403232",
+ "pipelineId" : "32vds94943fsdh4443",
+ "pipelineId" : "32vds94943fsdhs443"
+ ],
+ "existsAt" : "OM"
+ }
+ ...
+]
+```
+
+### GET /api/v1/containers/mismatch/deleted
+
+
+**参数**
+
+* prevKey (可选)
+
+返回在SCM中被标记为已删除状态且在OM中存在的容器集合,以便找出给定prevKey(容器ID)
+后映射到这些已删除状态容器的键列表。例如:prevKey=5,跳过容器直到准确地定位到前一个容器ID。
+
+* limit (可选)
+
+ 仅返回有限数量的结果。默认限制为1000。
+
+**回传**
+
+返回在SCM中已删除但在OM中存在的容器集合,以找出映射到这些已删除状态容器的键列表。
+
+```json
+[
+ {
+ "containerId": 2,
+ "numberOfKeys": 2,
+ "pipelines": []
+ }
+ ...
+]
+```
+
+### GET /api/v1/keys/open
+
+
+**参数**
+
+* prevKey (可选)
+
+ 返回给定 prevKey id 之后仍然处于打开状态且存在的键/文件集合。
+ 例如:prevKey=/vol1/bucket1/key1,这将跳过键,直到成功定位到给定的 prevKey。
+
+* limit (可选)
+
+ 仅返回有限数量的结果。默认限制为1000。
+
+**回传**
+
+返回处于打开状态的键/文件集合。
+
+```json
+{
+ "lastKey": "/vol1/fso-bucket/dir1/dir2/file2",
+ "replicatedTotal": 13824,
+ "unreplicatedTotal": 4608,
+ "entities": [
+ {
+ "path": "/vol1/bucket1/key1",
+ "keyState": "Open",
+ "inStateSince": 1667564193026,
+ "size": 1024,
+ "replicatedSize": 3072,
+ "unreplicatedSize": 1024,
+ "replicationType": "RATIS",
+ "replicationFactor": "THREE"
+ },
+ {
+ "path": "/vol1/bucket1/key2",
+ "keyState": "Open",
+ "inStateSince": 1667564193026,
+ "size": 512,
+ "replicatedSize": 1536,
+ "unreplicatedSize": 512,
+ "replicationType": "RATIS",
+ "replicationFactor": "THREE"
+ },
+ {
+ "path": "/vol1/fso-bucket/dir1/file1",
+ "keyState": "Open",
+ "inStateSince": 1667564193026,
+ "size": 1024,
+ "replicatedSize": 3072,
+ "unreplicatedSize": 1024,
+ "replicationType": "RATIS",
+ "replicationFactor": "THREE"
+ },
+ {
+ "path": "/vol1/fso-bucket/dir1/dir2/file2",
+ "keyState": "Open",
+ "inStateSince": 1667564193026,
+ "size": 2048,
+ "replicatedSize": 6144,
+ "unreplicatedSize": 2048,
+ "replicationType": "RATIS",
+ "replicationFactor": "THREE"
+ }
+ ]
+}
+```
+
+### GET /api/v1/keys/deletePending
+
+
+**参数**
+
+* prevKey (可选)
+
+ 返回给定 prevKey id 之后处于待删除状态的键/文件集合。
+ 例如:prevKey=/vol1/bucket1/key1,这将跳过键,直到成功定位到给定的 prevKey。
+
+* limit (可选)
+
+ 仅返回有限数量的结果。默认限制为1000。
+
+**回传**
+
+返回处于待删除状态的键/文件集合。
+
+```json
+{
+ "lastKey": "sampleVol/bucketOne/key_one",
+ "replicatedTotal": -1530804718628866300,
+ "unreplicatedTotal": -1530804718628866300,
+ "deletedkeyinfo": [
+ {
+ "omKeyInfoList": [
+ {
+ "metadata": {},
+ "objectID": 0,
+ "updateID": 0,
+ "parentObjectID": 0,
+ "volumeName": "sampleVol",
+ "bucketName": "bucketOne",
+ "keyName": "key_one",
+ "dataSize": -1530804718628866300,
+ "keyLocationVersions": [],
+ "creationTime": 0,
+ "modificationTime": 0,
+ "replicationConfig": {
+ "replicationFactor": "ONE",
+ "requiredNodes": 1,
+ "replicationType": "STANDALONE"
+ },
+ "fileChecksum": null,
+ "fileName": "key_one",
+ "acls": [],
+ "path": "0/key_one",
+ "file": false,
+ "latestVersionLocations": null,
+ "replicatedSize": -1530804718628866300,
+ "fileEncryptionInfo": null,
+ "objectInfo": "OMKeyInfo{volume='sampleVol', bucket='bucketOne',
key='key_one', dataSize='-1530804718628866186', creationTime='0', objectID='0',
parentID='0', replication='STANDALONE/ONE', fileChecksum='null}",
+ "updateIDset": false
+ }
+ ]
+ }
+ ],
+ "status": "OK"
+}
+```
+
+### GET /api/v1/keys/deletePending/dirs
+
+
+**参数**
+
+* prevKey (可选)
+
+ 返回给定 prevKey id 之后处于待删除状态的目录集合。
+ 例如:prevKey=/vol1/bucket1/bucket1/dir1,这将跳过目录,直到成功定位到给定的 prevKey。
+
+* limit (可选)
+
+ 仅返回有限数量的结果。默认限制为1000。
+
+**回传**
+
+返回处于待删除状态的目录集合。
+
+```json
+{
+ "lastKey": "vol1/bucket1/bucket1/dir1",
+ "replicatedTotal": -1530804718628866300,
+ "unreplicatedTotal": -1530804718628866300,
+ "deletedkeyinfo": [
+ {
+ "omKeyInfoList": [
+ {
+ "metadata": {},
+ "objectID": 0,
+ "updateID": 0,
+ "parentObjectID": 0,
+ "volumeName": "sampleVol",
+ "bucketName": "bucketOne",
+ "keyName": "key_one",
+ "dataSize": -1530804718628866300,
+ "keyLocationVersions": [],
+ "creationTime": 0,
+ "modificationTime": 0,
+ "replicationConfig": {
+ "replicationFactor": "ONE",
+ "requiredNodes": 1,
+ "replicationType": "STANDALONE"
+ },
+ "fileChecksum": null,
+ "fileName": "key_one",
+ "acls": [],
+ "path": "0/key_one",
+ "file": false,
+ "latestVersionLocations": null,
+ "replicatedSize": -1530804718628866300,
+ "fileEncryptionInfo": null,
+ "objectInfo": "OMKeyInfo{volume='sampleVol', bucket='bucketOne',
key='key_one', dataSize='-1530804718628866186', creationTime='0', objectID='0',
parentID='0', replication='STANDALONE/ONE', fileChecksum='null}",
+ "updateIDset": false
+ }
+ ]
+ }
+ ],
+ "status": "OK"
+}
+```
+
+## Blocks Metadata (admin only)
+### GET /api/v1/blocks/deletePending
+
+
+**参数**
+
+* prevKey (可选)
+
+ 仅返回给定块ID(prevKey)之后处于待删除状态的块列表。
+ 例如:prevKey=4,这将跳过 deletedBlocks 表中的键以跳过 prevKey 之前的记录。
+
+* limit (可选)
+
+ 仅返回有限数量的结果。默认限制为1000。
+
+**回传**
+
+返回待删除的块列表。
+
+```json
+{
+ "OPEN": [
+ {
+ "containerId": 100,
+ "localIDList": [
+ 1,
+ 2,
+ 3,
+ 4
+ ],
+ "localIDCount": 4,
+ "txID": 1
+ }
+ ]
+}
+```
+
+## Namespace Metadata (仅 admin)
+
+### GET /api/v1/namespace/summary
+
+**参数**
+
+* path
+
+ 字符串形式的路径请求,不包含任何协议前缀。
+
+**回传**
+
+返回路径的基本摘要,包括实体类型和路径下对象的聚合计数。
Review Comment:
摘要 -》 信息汇总
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]