From cfb148ea0c55f7d497292730f6a0ffc904d11a86 Mon Sep 17 00:00:00 2001 From: Airat Arifullin Date: Wed, 8 May 2024 13:07:33 +0300 Subject: [PATCH] [#48] object: Introduce `parent_split_id` and `parent_index` for `EC` * Introduce new fields for `EC`-header for `Object` service; * Regenerate docs. Signed-off-by: Airat Arifullin --- object/types.proto | 6 ++++++ proto-docs/object.md | 2 ++ 2 files changed, 8 insertions(+) diff --git a/object/types.proto b/object/types.proto index 5b02365..70cd948 100644 --- a/object/types.proto +++ b/object/types.proto @@ -208,6 +208,12 @@ message Header { uint32 header_length = 4 [ json_name = "headerLength" ]; // Chunk of a parent header. bytes header = 5 [ json_name = "header" ]; + // As the origin object is EC-splitted its identifier is known to all + // chunks as parent. But parent itself can be a part of Split (does not relate to EC-split). + // In this case parent_split_id should be set. + bytes parent_split_id = 6 [ json_name = "parentSplitID" ]; + // Parent's index in Split. + uint32 parent_split_index = 7 [ json_name = "parentSplitIndex" ]; } // Erasure code chunk information. EC ec = 12 [ json_name = "ec" ]; diff --git a/proto-docs/object.md b/proto-docs/object.md index 9c51c98..9e0e271 100644 --- a/proto-docs/object.md +++ b/proto-docs/object.md @@ -1064,6 +1064,8 @@ All objects belonging to a single EC group have the same `parent` field. | total | [uint32](#uint32) | | Total number of chunks in this split. | | header_length | [uint32](#uint32) | | Total length of a parent header. Used to trim padding zeroes. | | header | [bytes](#bytes) | | Chunk of a parent header. | +| parent_split_id | [bytes](#bytes) | | As the origin object is EC-splitted its identifier is known to all chunks as parent. But parent itself can be a part of Split (does not relate to EC-split). In this case parent_split_id should be set. | +| parent_split_index | [uint32](#uint32) | | Parent's index in Split. |