Skip to content

Commit

Permalink
container: add meta information consistency attribute
Browse files Browse the repository at this point in the history
Closes #300.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
  • Loading branch information
carpawell committed Oct 17, 2024
1 parent 01229b4 commit a2baf6c
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
16 changes: 16 additions & 0 deletions container/types.proto
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,22 @@ message Container {
// accepted in a NeoFS network only if the global network hashing configuration
// value corresponds with that attribute's value. After container inclusion, network
// setting is ignored.
// * __NEOFS__METAINFO_CONSISTENCY \
// Policy rule that defines the condition under which an object is considered
// processed. Acceptable values and meanings:
// 1. "strict": SN processes objects' meta information, it is validated,
// indexed and signed accordingly by a required minimal number of nodes
// that are included in the container, a corresponding object inclusion
// notification can be caught
// 2. "optimistic": the same as "strict" but a successful PUT operation
// does not mean objects' meta information has been multi signed and
// indexed correctly, however, SNs will try to do it asynchronously;
// in general PUT operations are expected to be faster than in the
// "strict" case
// 3. <other cases>: SN does not process objects' meta
// information, it is not indexed and object presence/number of copies
// is not proven after a successful object PUT operation; the behavior
// is the same as it was before this attribute introduction
//
// And some well-known attributes used by applications only:
//
Expand Down
16 changes: 16 additions & 0 deletions proto-docs/container.md
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,22 @@ There are some "well-known" attributes affecting system behaviour:
accepted in a NeoFS network only if the global network hashing configuration
value corresponds with that attribute's value. After container inclusion, network
setting is ignored.
* __NEOFS__METAINFO_CONSISTENCY \
Policy rule that defines the condition under which an object is considered
processed. Acceptable values and meanings:
1. "strict": SN processes objects' meta information, it is validated,
indexed and signed accordingly by a required minimal number of nodes
that are included in the container, a corresponding object inclusion
notification can be caught
2. "optimistic": the same as "strict" but a successful PUT operation
does not mean objects' meta information has been multi signed and
indexed correctly, however, SNs will try to do it asynchronously;
in general PUT operations are expected to be faster than in the
"strict" case
3. <other cases>: SN does not process objects' meta
information, it is not indexed and object presence/number of copies
is not proven after a successful object PUT operation; the behavior
is the same as it was before this attribute introduction

And some well-known attributes used by applications only:

Expand Down

0 comments on commit a2baf6c

Please sign in to comment.