[#14] Rename __FROSTFS__ to __SYSTEM__ #15

Merged
alexvanin merged 1 commit from dkirillov/frostfs-api:feature/14-rename_system_attribute into master 2023-03-15 07:37:36 +00:00
16 changed files with 113 additions and 66 deletions

View file

@ -1,5 +1,10 @@
# Changelog # Changelog
## [Unreleased]
### Changed
- Add `__SYSTEM__` attribute prefix (#12, #14)
## [2.14.0] - 2022-09-23 - Anmado (안마도, 鞍馬島) ## [2.14.0] - 2022-09-23 - Anmado (안마도, 鞍馬島)
### Added ### Added

View file

@ -37,16 +37,20 @@ message Container {
// //
// There are some "well-known" attributes affecting system behaviour: // There are some "well-known" attributes affecting system behaviour:
// //
// * [ __NEOFS__SUBNET | __FROSTFS__SUBNET ] \ // * [ __SYSTEM__SUBNET ] \
// (`__NEOFS__SUBNET` is deprecated) \
// String ID of a container's storage subnet. Any container can be attached to // String ID of a container's storage subnet. Any container can be attached to
// one subnet only. // one subnet only.
// * [ __NEOFS__NAME | __FROSTFS__NAME ] \ // * [ __SYSTEM__NAME ] \
// (`__NEOFS__NAME` is deprecated) \
// String of a human-friendly container name registered as a domain in // String of a human-friendly container name registered as a domain in
// NNS contract. // NNS contract.
// * [ __NEOFS__ZONE | __FROSTFS__ZONE ] \ // * [ __SYSTEM__ZONE ] \
// String of a zone for `__NEOFS__NAME`/`__FROSTFS__NAME`. Used as a TLD of a domain name in NNS // (`__NEOFS__ZONE` is deprecated) \
// String of a zone for `__SYSTEM__NAME` (`__NEOFS__NAME` is deprecated). Used as a TLD of a domain name in NNS
// contract. If no zone is specified, use default zone: `container`. // contract. If no zone is specified, use default zone: `container`.
// * [ __NEOFS__DISABLE_HOMOMORPHIC_HASHING | __FROSTFS__DISABLE_HOMOMORPHIC_HASHING ] \ // * [ __SYSTEM__DISABLE_HOMOMORPHIC_HASHING ] \
// (`__NEOFS__DISABLE_HOMOMORPHIC_HASHING` is deprecated) \
// Disables homomorphic hashing for the container if the value equals "true" string. // Disables homomorphic hashing for the container if the value equals "true" string.
// Any other values are interpreted as missing attribute. Container could be // Any other values are interpreted as missing attribute. Container could be
// accepted in a NeoFS network only if the global network hashing configuration // accepted in a NeoFS network only if the global network hashing configuration

View file

@ -9,7 +9,7 @@ import "refs/types.proto";
// Lock objects protects a list of objects from being deleted. The lifetime of a // Lock objects protects a list of objects from being deleted. The lifetime of a
// lock object is limited similar to regular objects in // lock object is limited similar to regular objects in
// `__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` attribute. Lock object MUST have expiration epoch. // `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated) attribute. Lock object MUST have expiration epoch.
// It is impossible to delete a lock object via ObjectService.Delete RPC call. // It is impossible to delete a lock object via ObjectService.Delete RPC call.
message Lock { message Lock {
// List of objects to lock. Must not be empty or carry empty IDs. // List of objects to lock. Must not be empty or carry empty IDs.

View file

@ -164,7 +164,8 @@ message NodeInfo {
// attributes it's a string presenting floating point number with comma or // attributes it's a string presenting floating point number with comma or
// point delimiter for decimal part. In the Network Map it will be saved as // point delimiter for decimal part. In the Network Map it will be saved as
// 64-bit unsigned integer representing number of minimal token fractions. // 64-bit unsigned integer representing number of minimal token fractions.
// * [ __NEOFS__SUBNET_%s | __FROSTFS__SUBNET_%s ] \ // * [ __SYSTEM__SUBNET_%s ] \
// (`__NEOFS__SUBNET_%s` is deprecated) \
// `True` or `False`. Defines if the node is included in the `%s` subnetwork // `True` or `False`. Defines if the node is included in the `%s` subnetwork
// or not. `%s` must be an existing subnetwork's ID (non-negative integer number). // or not. `%s` must be an existing subnetwork's ID (non-negative integer number).
// A node can be included in more than one subnetwork and, therefore, can contain // A node can be included in more than one subnetwork and, therefore, can contain

View file

@ -20,11 +20,13 @@ service ObjectService {
// keeping the receiving order. // keeping the receiving order.
// //
// Extended headers can change `Get` behaviour: // Extended headers can change `Get` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requsted version of Network Map for object placement // Will use the requsted version of Network Map for object placement
// calculation. // calculation.
// * [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ // * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
// Will try older versions (starting from `__NEOFS__NETMAP_EPOCH`/`__FROSTFS__NETMAP_EPOCH` if specified or // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
// Will try older versions (starting from `__SYSTEM__NETMAP_EPOCH` (`__NEOFS__NETMAP_EPOCH` is deprecated) if specified or
// the latest one otherwise) of Network Map to find an object until the depth // the latest one otherwise) of Network Map to find an object until the depth
// limit is reached. // limit is reached.
// //
@ -54,7 +56,8 @@ service ObjectService {
// Chunk messages SHOULD be sent in the direct order of fragmentation. // Chunk messages SHOULD be sent in the direct order of fragmentation.
// //
// Extended headers can change `Put` behaviour: // Extended headers can change `Put` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH \ // * [ __SYSTEM__NETMAP_EPOCH \
// (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requsted version of Network Map for object placement // Will use the requsted version of Network Map for object placement
// calculation. // calculation.
// //
@ -85,8 +88,9 @@ service ObjectService {
// guarantee. Object will be marked for removal and deleted eventually. // guarantee. Object will be marked for removal and deleted eventually.
// //
// Extended headers can change `Delete` behaviour: // Extended headers can change `Delete` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// Will use the requsted version of Network Map for object placement // (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requested version of Network Map for object placement
// calculation. // calculation.
// //
// Please refer to detailed `XHeader` description. // Please refer to detailed `XHeader` description.
@ -110,8 +114,9 @@ service ObjectService {
// the very minimal information will be returned instead. // the very minimal information will be returned instead.
// //
// Extended headers can change `Head` behaviour: // Extended headers can change `Head` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// Will use the requsted version of Network Map for object placement // (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requested version of Network Map for object placement
// calculation. // calculation.
// //
// Please refer to detailed `XHeader` description. // Please refer to detailed `XHeader` description.
@ -137,8 +142,9 @@ service ObjectService {
// Specification section for more details. // Specification section for more details.
// //
// Extended headers can change `Search` behaviour: // Extended headers can change `Search` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// Will use the requsted version of Network Map for object placement // (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requested version of Network Map for object placement
// calculation. // calculation.
// //
// Please refer to detailed `XHeader` description. // Please refer to detailed `XHeader` description.
@ -161,10 +167,12 @@ service ObjectService {
// order. // order.
// //
// Extended headers can change `GetRange` behaviour: // Extended headers can change `GetRange` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// Will use the requsted version of Network Map for object placement // (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requested version of Network Map for object placement
// calculation. // calculation.
// * [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ // * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
// (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
// Will try older versions of Network Map to find an object until the depth // Will try older versions of Network Map to find an object until the depth
// limit is reached. // limit is reached.
// //
@ -194,10 +202,12 @@ service ObjectService {
// the request. Note that hash is calculated for XORed data. // the request. Note that hash is calculated for XORed data.
// //
// Extended headers can change `GetRangeHash` behaviour: // Extended headers can change `GetRangeHash` behaviour:
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// Will use the requsted version of Network Map for object placement // (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Will use the requested version of Network Map for object placement
// calculation. // calculation.
// * [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ // * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
// (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
// Will try older versions of Network Map to find an object until the depth // Will try older versions of Network Map to find an object until the depth
// limit is reached. // limit is reached.
// //

View file

@ -114,19 +114,23 @@ message Header {
// Objects with duplicated attribute names or attributes with empty values // Objects with duplicated attribute names or attributes with empty values
// will be considered invalid. // will be considered invalid.
// //
// There are some "well-known" attributes starting with `__NEOFS__`/`__FROSTFS__` prefix // There are some "well-known" attributes starting with `__SYSTEM__` (`__NEOFS__` is deprecated) prefix
// that affect system behaviour: // that affect system behaviour:
// //
// * [ __NEOFS__UPLOAD_ID | __FROSTFS__UPLOAD_ID ] \ // * [ __SYSTEM__UPLOAD_ID ] \
// (`__NEOFS__UPLOAD_ID` is deprecated) \
// Marks smaller parts of a split bigger object // Marks smaller parts of a split bigger object
// * [ __NEOFS__EXPIRATION_EPOCH | __FROSTFS__EXPIRATION_EPOCH ] \ // * [ __SYSTEM__EXPIRATION_EPOCH ] \
// (`__NEOFS__EXPIRATION_EPOCH` is deprecated) \
// Tells GC to delete object after that epoch // Tells GC to delete object after that epoch
// * [ __NEOFS__TICK_EPOCH | __FROSTFS__TICK_EPOCH ] \ // * [ __SYSTEM__TICK_EPOCH ] \
// (`__NEOFS__TICK_EPOCH` is deprecated) \
// Decimal number that defines what epoch must produce // Decimal number that defines what epoch must produce
// object notification with UTF-8 object address in a // object notification with UTF-8 object address in a
// body (`0` value produces notification right after // body (`0` value produces notification right after
// object put) // object put)
// * [ __NEOFS__TICK_TOPIC | __FROSTFS__TICK_TOPIC ] \ // * [ __SYSTEM__TICK_TOPIC ] \
// (`__NEOFS__TICK_TOPIC` is deprecated) \
// UTF-8 string topic ID that is used for object notification // UTF-8 string topic ID that is used for object notification
// //
// And some well-known attributes used by applications only: // And some well-known attributes used by applications only:

View file

@ -587,16 +587,20 @@ values will be considered invalid.
There are some "well-known" attributes affecting system behaviour: There are some "well-known" attributes affecting system behaviour:
* [ __NEOFS__SUBNET | __FROSTFS__SUBNET ] \ * [ __SYSTEM__SUBNET ] \
(`__NEOFS__SUBNET` is deprecated) \
String ID of a container's storage subnet. Any container can be attached to String ID of a container's storage subnet. Any container can be attached to
one subnet only. one subnet only.
* [ __NEOFS__NAME | __FROSTFS__NAME ] \ * [ __SYSTEM__NAME ] \
(`__NEOFS__NAME` is deprecated) \
String of a human-friendly container name registered as a domain in String of a human-friendly container name registered as a domain in
NNS contract. NNS contract.
* [ __NEOFS__ZONE | __FROSTFS__ZONE ] \ * [ __SYSTEM__ZONE ] \
String of a zone for `__NEOFS__NAME`/`__FROSTFS__NAME`. Used as a TLD of a domain name in NNS (`__NEOFS__ZONE` is deprecated) \
String of a zone for `__SYSTEM__NAME` (`__NEOFS__NAME` is deprecated). Used as a TLD of a domain name in NNS
contract. If no zone is specified, use default zone: `container`. contract. If no zone is specified, use default zone: `container`.
* [ __NEOFS__DISABLE_HOMOMORPHIC_HASHING | __FROSTFS__DISABLE_HOMOMORPHIC_HASHING ] \ * [ __SYSTEM__DISABLE_HOMOMORPHIC_HASHING ] \
(`__NEOFS__DISABLE_HOMOMORPHIC_HASHING` is deprecated) \
Disables homomorphic hashing for the container if the value equals "true" string. Disables homomorphic hashing for the container if the value equals "true" string.
Any other values are interpreted as missing attribute. Container could be Any other values are interpreted as missing attribute. Container could be
accepted in a NeoFS network only if the global network hashing configuration accepted in a NeoFS network only if the global network hashing configuration

View file

@ -27,7 +27,7 @@
### Message Lock ### Message Lock
Lock objects protects a list of objects from being deleted. The lifetime of a Lock objects protects a list of objects from being deleted. The lifetime of a
lock object is limited similar to regular objects in lock object is limited similar to regular objects in
`__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` attribute. Lock object MUST have expiration epoch. `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated) attribute. Lock object MUST have expiration epoch.
It is impossible to delete a lock object via ObjectService.Delete RPC call. It is impossible to delete a lock object via ObjectService.Delete RPC call.

View file

@ -406,7 +406,8 @@ explicitly set:
attributes it's a string presenting floating point number with comma or attributes it's a string presenting floating point number with comma or
point delimiter for decimal part. In the Network Map it will be saved as point delimiter for decimal part. In the Network Map it will be saved as
64-bit unsigned integer representing number of minimal token fractions. 64-bit unsigned integer representing number of minimal token fractions.
* [ __NEOFS__SUBNET_%s | __FROSTFS__SUBNET_%s ] \ * [ __SYSTEM__SUBNET_%s ] \
(`__NEOFS__SUBNET_%s` is deprecated) \
`True` or `False`. Defines if the node is included in the `%s` subnetwork `True` or `False`. Defines if the node is included in the `%s` subnetwork
or not. `%s` must be an existing subnetwork's ID (non-negative integer number). or not. `%s` must be an existing subnetwork's ID (non-negative integer number).
A node can be included in more than one subnetwork and, therefore, can contain A node can be included in more than one subnetwork and, therefore, can contain

View file

@ -93,11 +93,13 @@ be restored by concatenation of object message payload and all chunks
keeping the receiving order. keeping the receiving order.
Extended headers can change `Get` behaviour: Extended headers can change `Get` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
(`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requsted version of Network Map for object placement Will use the requsted version of Network Map for object placement
calculation. calculation.
* [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
Will try older versions (starting from `__NEOFS__NETMAP_EPOCH`/`__FROSTFS__NETMAP_EPOCH` if specified or (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
Will try older versions (starting from `__SYSTEM__NETMAP_EPOCH` (`__NEOFS__NETMAP_EPOCH` is deprecated) if specified or
the latest one otherwise) of Network Map to find an object until the depth the latest one otherwise) of Network Map to find an object until the depth
limit is reached. limit is reached.
@ -131,7 +133,8 @@ object payload. All messages, except first one, SHOULD be payload chunks.
Chunk messages SHOULD be sent in the direct order of fragmentation. Chunk messages SHOULD be sent in the direct order of fragmentation.
Extended headers can change `Put` behaviour: Extended headers can change `Put` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH \ * [ __SYSTEM__NETMAP_EPOCH \
(`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requsted version of Network Map for object placement Will use the requsted version of Network Map for object placement
calculation. calculation.
@ -166,8 +169,9 @@ Delete the object from a container. There is no immediate removal
guarantee. Object will be marked for removal and deleted eventually. guarantee. Object will be marked for removal and deleted eventually.
Extended headers can change `Delete` behaviour: Extended headers can change `Delete` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
Will use the requsted version of Network Map for object placement (`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requested version of Network Map for object placement
calculation. calculation.
Please refer to detailed `XHeader` description. Please refer to detailed `XHeader` description.
@ -195,8 +199,9 @@ returned. If `main_only` request field is set, the short header with only
the very minimal information will be returned instead. the very minimal information will be returned instead.
Extended headers can change `Head` behaviour: Extended headers can change `Head` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
Will use the requsted version of Network Map for object placement (`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requested version of Network Map for object placement
calculation. calculation.
Please refer to detailed `XHeader` description. Please refer to detailed `XHeader` description.
@ -226,8 +231,9 @@ Header's filed values. Please see the corresponding NeoFS Technical
Specification section for more details. Specification section for more details.
Extended headers can change `Search` behaviour: Extended headers can change `Search` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
Will use the requsted version of Network Map for object placement (`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requested version of Network Map for object placement
calculation. calculation.
Please refer to detailed `XHeader` description. Please refer to detailed `XHeader` description.
@ -254,10 +260,12 @@ restored by concatenation of all received payload chunks keeping the receiving
order. order.
Extended headers can change `GetRange` behaviour: Extended headers can change `GetRange` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
Will use the requsted version of Network Map for object placement (`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requested version of Network Map for object placement
calculation. calculation.
* [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
(`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
Will try older versions of Network Map to find an object until the depth Will try older versions of Network Map to find an object until the depth
limit is reached. limit is reached.
@ -291,10 +299,12 @@ length) tuples. Hashes order in response corresponds to the ranges order in
the request. Note that hash is calculated for XORed data. the request. Note that hash is calculated for XORed data.
Extended headers can change `GetRangeHash` behaviour: Extended headers can change `GetRangeHash` behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
Will use the requsted version of Network Map for object placement (`__NEOFS__NETMAP_EPOCH` is deprecated) \
Will use the requested version of Network Map for object placement
calculation. calculation.
* [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
(`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
Will try older versions of Network Map to find an object until the depth Will try older versions of Network Map to find an object until the depth
limit is reached. limit is reached.
@ -848,19 +858,23 @@ Key name must be an object-unique valid UTF-8 string. Value can't be empty.
Objects with duplicated attribute names or attributes with empty values Objects with duplicated attribute names or attributes with empty values
will be considered invalid. will be considered invalid.
There are some "well-known" attributes starting with `__NEOFS__`/`__FROSTFS__` prefix There are some "well-known" attributes starting with `__SYSTEM__` (`__NEOFS__` is deprecated) prefix
that affect system behaviour: that affect system behaviour:
* [ __NEOFS__UPLOAD_ID | __FROSTFS__UPLOAD_ID ] \ * [ __SYSTEM__UPLOAD_ID ] \
(`__NEOFS__UPLOAD_ID` is deprecated) \
Marks smaller parts of a split bigger object Marks smaller parts of a split bigger object
* [ __NEOFS__EXPIRATION_EPOCH | __FROSTFS__EXPIRATION_EPOCH ] \ * [ __SYSTEM__EXPIRATION_EPOCH ] \
(`__NEOFS__EXPIRATION_EPOCH` is deprecated) \
Tells GC to delete object after that epoch Tells GC to delete object after that epoch
* [ __NEOFS__TICK_EPOCH | __FROSTFS__TICK_EPOCH ] \ * [ __SYSTEM__TICK_EPOCH ] \
(`__NEOFS__TICK_EPOCH` is deprecated) \
Decimal number that defines what epoch must produce Decimal number that defines what epoch must produce
object notification with UTF-8 object address in a object notification with UTF-8 object address in a
body (`0` value produces notification right after body (`0` value produces notification right after
object put) object put)
* [ __NEOFS__TICK_TOPIC | __FROSTFS__TICK_TOPIC ] \ * [ __SYSTEM__TICK_TOPIC ] \
(`__NEOFS__TICK_TOPIC` is deprecated) \
UTF-8 string topic ID that is used for object notification UTF-8 string topic ID that is used for object notification
And some well-known attributes used by applications only: And some well-known attributes used by applications only:

View file

@ -285,14 +285,16 @@ Key name must be a unique valid UTF-8 string. Value can't be empty. Requests or
Responses with duplicated header names or headers with empty values will be Responses with duplicated header names or headers with empty values will be
considered invalid. considered invalid.
There are some "well-known" headers starting with `__NEOFS__` or `__FROSTFS__` prefix that There are some "well-known" headers starting with `__SYSTEM__` (`__NEOFS__` is deprecated) prefix that
affect system behaviour: affect system behaviour:
* [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ * [ __SYSTEM__NETMAP_EPOCH ] \
(`__NEOFS__NETMAP_EPOCH` is deprecated) \
Netmap epoch to use for object placement calculation. The `value` is string Netmap epoch to use for object placement calculation. The `value` is string
encoded `uint64` in decimal presentation. If set to '0' or not set, the encoded `uint64` in decimal presentation. If set to '0' or not set, the
current epoch only will be used. current epoch only will be used.
* [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
(`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
If object can't be found using current epoch's netmap, this header limits If object can't be found using current epoch's netmap, this header limits
how many past epochs the node can look up through. The `value` is string how many past epochs the node can look up through. The `value` is string
encoded `uint64` in decimal presentation. If set to '0' or not set, only the encoded `uint64` in decimal presentation. If set to '0' or not set, only the

View file

@ -31,7 +31,7 @@ additional information used for the proof of storage. `StorageGroup` only
contains objects from the same container. contains objects from the same container.
Being an object payload, StorageGroup may have expiration Epoch set with Being an object payload, StorageGroup may have expiration Epoch set with
`__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` well-known attribute. When expired, StorageGroup `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated) well-known attribute. When expired, StorageGroup
will be ignored by InnerRing nodes during Data Audit cycles and will be will be ignored by InnerRing nodes during Data Audit cycles and will be
deleted by Storage Nodes. deleted by Storage Nodes.

View file

@ -31,7 +31,7 @@ purged from the NeoFS network.
| Field | Type | Label | Description | | Field | Type | Label | Description |
| ----- | ---- | ----- | ----------- | | ----- | ---- | ----- | ----------- |
| expiration_epoch | [uint64](#uint64) | | Last NeoFS epoch number of the tombstone lifetime. It's set by the tombstone creator depending on the current NeoFS network settings. A tombstone object must have the same expiration epoch value in `__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` attribute. Otherwise, the tombstone will be rejected by a storage node. | | expiration_epoch | [uint64](#uint64) | | Last NeoFS epoch number of the tombstone lifetime. It's set by the tombstone creator depending on the current NeoFS network settings. A tombstone object must have the same expiration epoch value in `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated) attribute. Otherwise, the tombstone will be rejected by a storage node. |
| split_id | [bytes](#bytes) | | 16 byte UUID used to identify the split object hierarchy parts. Must be unique inside a container. All objects participating in the split must have the same `split_id` value. | | split_id | [bytes](#bytes) | | 16 byte UUID used to identify the split object hierarchy parts. Must be unique inside a container. All objects participating in the split must have the same `split_id` value. |
| members | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | repeated | List of objects to be deleted. | | members | [neo.fs.v2.refs.ObjectID](#neo.fs.v2.refs.ObjectID) | repeated | List of objects to be deleted. |

View file

@ -137,14 +137,16 @@ message SessionToken {
// Responses with duplicated header names or headers with empty values will be // Responses with duplicated header names or headers with empty values will be
// considered invalid. // considered invalid.
// //
// There are some "well-known" headers starting with `__NEOFS__` or `__FROSTFS__` prefix that // There are some "well-known" headers starting with `__SYSTEM__` (`__NEOFS__` is deprecated) prefix that
// affect system behaviour: // affect system behaviour:
// //
// * [ __NEOFS__NETMAP_EPOCH | __FROSTFS__NETMAP_EPOCH ] \ // * [ __SYSTEM__NETMAP_EPOCH ] \
// (`__NEOFS__NETMAP_EPOCH` is deprecated) \
// Netmap epoch to use for object placement calculation. The `value` is string // Netmap epoch to use for object placement calculation. The `value` is string
// encoded `uint64` in decimal presentation. If set to '0' or not set, the // encoded `uint64` in decimal presentation. If set to '0' or not set, the
// current epoch only will be used. // current epoch only will be used.
// * [ __NEOFS__NETMAP_LOOKUP_DEPTH | __FROSTFS__NETMAP_LOOKUP_DEPTH ] \ // * [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \
// (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \
// If object can't be found using current epoch's netmap, this header limits // If object can't be found using current epoch's netmap, this header limits
// how many past epochs the node can look up through. The `value` is string // how many past epochs the node can look up through. The `value` is string
// encoded `uint64` in decimal presentation. If set to '0' or not set, only the // encoded `uint64` in decimal presentation. If set to '0' or not set, only the

View file

@ -13,7 +13,7 @@ import "refs/types.proto";
// contains objects from the same container. // contains objects from the same container.
// //
// Being an object payload, StorageGroup may have expiration Epoch set with // Being an object payload, StorageGroup may have expiration Epoch set with
// `__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` well-known attribute. When expired, StorageGroup // `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated) well-known attribute. When expired, StorageGroup
// will be ignored by InnerRing nodes during Data Audit cycles and will be // will be ignored by InnerRing nodes during Data Audit cycles and will be
// deleted by Storage Nodes. // deleted by Storage Nodes.
// //

View file

@ -12,7 +12,7 @@ import "refs/types.proto";
message Tombstone { message Tombstone {
// Last NeoFS epoch number of the tombstone lifetime. It's set by the tombstone // Last NeoFS epoch number of the tombstone lifetime. It's set by the tombstone
// creator depending on the current NeoFS network settings. A tombstone object // creator depending on the current NeoFS network settings. A tombstone object
// must have the same expiration epoch value in `__NEOFS__EXPIRATION_EPOCH`/`__FROSTFS__EXPIRATION_EPOCH` // must have the same expiration epoch value in `__SYSTEM__EXPIRATION_EPOCH` (`__NEOFS__EXPIRATION_EPOCH` is deprecated)
// attribute. Otherwise, the tombstone will be rejected by a storage node. // attribute. Otherwise, the tombstone will be rejected by a storage node.
uint64 expiration_epoch = 1 [json_name = "expirationEpoch"]; uint64 expiration_epoch = 1 [json_name = "expirationEpoch"];