forked from TrueCloudLab/frostfs-api
Release v2.3.0 - Seonyudo (선유도, 仙遊島)
UN-LOCODE support and Container's used space reporting Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
This commit is contained in:
parent
5152f607f1
commit
a37a7c5ef4
5 changed files with 190 additions and 22 deletions
75
CHANGELOG.md
75
CHANGELOG.md
|
@ -1,11 +1,47 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## [2.3.0] - 2021-02-11 - Seonyudo (선유도, 仙遊島)
|
||||||
|
|
||||||
|
This release brings support for nodes to exchange information about disk space
|
||||||
|
used by each Container. This information will be used by Inner Ring nodes to
|
||||||
|
calculate basic rewards and payments.
|
||||||
|
|
||||||
|
Another significant change is UN/LOCODE support for node's attributes describing
|
||||||
|
geographical location. From now on, most of the geographical attributes will be
|
||||||
|
calculated automatically from a single `UN-LOCODE` attribute in a deterministic
|
||||||
|
manner.
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Added `container.AnnounceUsedSpace` request for announcing disk space consumed
|
||||||
|
by container's objects on the node
|
||||||
|
- Added `Continent` well-known node's attribute
|
||||||
|
- Added `SubDivCode` well-known node's attribute
|
||||||
|
- Added `Location` well-known node's attribute
|
||||||
|
- Added `CounrtyCode` well-known node's attribute
|
||||||
|
- Added `STRING_NOT_EQUAL` match type
|
||||||
|
- Added `NOT_PRESENT` match type
|
||||||
|
- Added JSON names for search request filter fields
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- `Locode` well-known node's attribute renamed to `UN-LOCODE`. It will be used
|
||||||
|
as a base for calculating most of the node's geographical attributes.
|
||||||
|
- `Region` well-known node's attribute renamed to `SubDiv`
|
||||||
|
|
||||||
|
### Removed
|
||||||
|
|
||||||
|
- Removed `City` well-known node's attribute
|
||||||
|
- Removed `Region` well-known node's attribute
|
||||||
|
|
||||||
## [2.2.1] - 2021-01-15
|
## [2.2.1] - 2021-01-15
|
||||||
|
|
||||||
Define "well-known" X-headers
|
Define "well-known" X-headers
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
- Description of the format of "well-known" X-headers that affect system behavior
|
|
||||||
|
- Description of the format of "well-known" X-headers that affect system
|
||||||
|
behavior
|
||||||
- X-header key to netmap epoch value
|
- X-header key to netmap epoch value
|
||||||
- X-header key to netmap lookup depth value
|
- X-header key to netmap lookup depth value
|
||||||
|
|
||||||
|
@ -14,9 +50,11 @@ Define "well-known" X-headers
|
||||||
Storage Groups based Data Audit updates
|
Storage Groups based Data Audit updates
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- `audit.DataAuditResult` message for recording audit result is added
|
- `audit.DataAuditResult` message for recording audit result is added
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- `object.ShortHeader` now has `payload_hash` and `homomorphic_hash` fields
|
- `object.ShortHeader` now has `payload_hash` and `homomorphic_hash` fields
|
||||||
|
|
||||||
## [2.1.1] - 2020-12-17
|
## [2.1.1] - 2020-12-17
|
||||||
|
@ -24,6 +62,7 @@ Storage Groups based Data Audit updates
|
||||||
Minor documentation fixes
|
Minor documentation fixes
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Clarify JSON encoding for `ObjectID`, `ContainerID` and `OwnerID`
|
- Clarify JSON encoding for `ObjectID`, `ContainerID` and `OwnerID`
|
||||||
- Clarify object field usage in some requests' eACL filters
|
- Clarify object field usage in some requests' eACL filters
|
||||||
|
|
||||||
|
@ -32,6 +71,7 @@ Minor documentation fixes
|
||||||
Object split and deletion improvements, documentation clarifications.
|
Object split and deletion improvements, documentation clarifications.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- `$Object:objectID` added to the list of available ACL and Search filters
|
- `$Object:objectID` added to the list of available ACL and Search filters
|
||||||
- `split_id` field added in `object.Object.header`
|
- `split_id` field added in `object.Object.header`
|
||||||
- `$Object:split.splitID` search filter added
|
- `$Object:split.splitID` search filter added
|
||||||
|
@ -47,10 +87,12 @@ Object split and deletion improvements, documentation clarifications.
|
||||||
- `raw` flag added in `object.GetRangeRequest.Body`
|
- `raw` flag added in `object.GetRangeRequest.Body`
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Clarified special search index descriptions
|
- Clarified special search index descriptions
|
||||||
- Clarified various types encoding formats descriptions
|
- Clarified various types encoding formats descriptions
|
||||||
|
|
||||||
### Removed
|
### Removed
|
||||||
|
|
||||||
- `$Object:CHILDFREE` filter description removed from well-known list
|
- `$Object:CHILDFREE` filter description removed from well-known list
|
||||||
- `$Object:LEAF` filter description removed from well-known list
|
- `$Object:LEAF` filter description removed from well-known list
|
||||||
|
|
||||||
|
@ -59,11 +101,14 @@ Object split and deletion improvements, documentation clarifications.
|
||||||
More "well-known" application attributes and documentation updates.
|
More "well-known" application attributes and documentation updates.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Added "well-known" attributes list for extended ACL and object search filters
|
- Added "well-known" attributes list for extended ACL and object search filters
|
||||||
- Added `Name`, `Timestamp` "well-known" application attributes for container
|
- Added `Name`, `Timestamp` "well-known" application attributes for container
|
||||||
- Added `Name`, `FileName`, `Timestamp` "well-known" application attributes for object
|
- Added `Name`, `FileName`, `Timestamp` "well-known" application attributes for
|
||||||
|
object
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- `BearerToken.owner_id` field description changed
|
- `BearerToken.owner_id` field description changed
|
||||||
- `Subnet` container attribute now has `__NEOFS__` prefix
|
- `Subnet` container attribute now has `__NEOFS__` prefix
|
||||||
- Search and ACL filters now have `key` and `value` fields
|
- Search and ACL filters now have `key` and `value` fields
|
||||||
|
@ -73,16 +118,19 @@ More "well-known" application attributes and documentation updates.
|
||||||
Documentation updates and JSON field names definition
|
Documentation updates and JSON field names definition
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Added "well-known" attributes list for `netmap.NodeInfo`
|
- Added "well-known" attributes list for `netmap.NodeInfo`
|
||||||
- Added "well-known" attributes list for objects
|
- Added "well-known" attributes list for objects
|
||||||
- Added "well-known" attributes list for containers
|
- Added "well-known" attributes list for containers
|
||||||
- JSON field names defined for most of data structures
|
- JSON field names defined for most of data structures
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Documentation updated for all packages fixing typos and minor inaccuracies
|
- Documentation updated for all packages fixing typos and minor inaccuracies
|
||||||
- `acl.EACLRecord.Target.key_list` field renamed to `keys` for consistency
|
- `acl.EACLRecord.Target.key_list` field renamed to `keys` for consistency
|
||||||
|
|
||||||
### Removed
|
### Removed
|
||||||
|
|
||||||
- Human-written documentation will now be only in [NeoFS
|
- Human-written documentation will now be only in [NeoFS
|
||||||
Specification](https://github.com/nspcc-dev/neofs-spec)
|
Specification](https://github.com/nspcc-dev/neofs-spec)
|
||||||
|
|
||||||
|
@ -91,6 +139,7 @@ Documentation updates and JSON field names definition
|
||||||
Major API refactoring and simplification.
|
Major API refactoring and simplification.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- `neo.fs.v2` prefix added to all package names
|
- `neo.fs.v2` prefix added to all package names
|
||||||
- `container.Attributes` field added
|
- `container.Attributes` field added
|
||||||
- `refs.ContainerID` added as a separate type
|
- `refs.ContainerID` added as a separate type
|
||||||
|
@ -102,26 +151,31 @@ Major API refactoring and simplification.
|
||||||
- `refs.Version` defined as a separate type
|
- `refs.Version` defined as a separate type
|
||||||
- `refs.Version` field added to all messages stored in SmartContracts
|
- `refs.Version` field added to all messages stored in SmartContracts
|
||||||
- `refs.Checksum` defined as a separate type
|
- `refs.Checksum` defined as a separate type
|
||||||
- `netmap.LocalNodeInfo` request added to get actual information from connected peer
|
- `netmap.LocalNodeInfo` request added to get actual information from connected
|
||||||
|
peer
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
- Extended ACL Table format changed
|
- Extended ACL Table format changed
|
||||||
- Protobuf definitions style changed to follow Google Style Guide
|
- Protobuf definitions style changed to follow Google Style Guide
|
||||||
- `System` and `Extended` Object headers are merged into on `object.Header` type
|
- `System` and `Extended` Object headers are merged into on `object.Header` type
|
||||||
- `object.UserHeader` renamed to `object.Header.Attribute`
|
- `object.UserHeader` renamed to `object.Header.Attribute`
|
||||||
- `refs.ObjectID` is now a hash of the `object.Header` field, which contains hash of payload
|
- `refs.ObjectID` is now a hash of the `object.Header` field, which contains
|
||||||
|
hash of payload
|
||||||
- `StorageGroup` information moved to Object's payload
|
- `StorageGroup` information moved to Object's payload
|
||||||
- `netmap.NodeInfo.options` renamed to `netmap.NodeInfo.attributes` and it uses a
|
- `netmap.NodeInfo.options` renamed to `netmap.NodeInfo.attributes` and it uses
|
||||||
separate `netmap.NodeInfo.Attribute` type now.
|
a separate `netmap.NodeInfo.Attribute` type now.
|
||||||
- `netmap.NodeInfo.Attribute` type now has a list of parents to construct a tree
|
- `netmap.NodeInfo.Attribute` type now has a list of parents to construct a tree
|
||||||
- Session Token renamed to `session.SessionToken` from `session.Token`
|
- Session Token renamed to `session.SessionToken` from `session.Token`
|
||||||
- All Requests and Responses now have a common "body-meta-verify" structure
|
- All Requests and Responses now have a common "body-meta-verify" structure
|
||||||
- Meta and Verification headers now follow Matryoshka-style composition
|
- Meta and Verification headers now follow Matryoshka-style composition
|
||||||
- SessionToken and BearerToken are now part of Meta header
|
- SessionToken and BearerToken are now part of Meta header
|
||||||
- Object placement policy format is simplified and defined in `netmap` package
|
- Object placement policy format is simplified and defined in `netmap` package
|
||||||
- `object.Head()` request now returns either short header or full header with a signature
|
- `object.Head()` request now returns either short header or full header with a
|
||||||
|
signature
|
||||||
|
|
||||||
### Removed
|
### Removed
|
||||||
|
|
||||||
- gogoproto is not used anymore
|
- gogoproto is not used anymore
|
||||||
- `decimal` package merged into `accounting` package
|
- `decimal` package merged into `accounting` package
|
||||||
- `query` package merged into `object` package
|
- `query` package merged into `object` package
|
||||||
|
@ -142,7 +196,8 @@ Major API refactoring and simplification.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- ```acl.EACLRecord```, ```acl.EACLTable``` messages for the table of extended ACL rules.
|
- ```acl.EACLRecord```, ```acl.EACLTable``` messages for the table of extended
|
||||||
|
ACL rules.
|
||||||
|
|
||||||
## [1.1.0] - 2020-06-18
|
## [1.1.0] - 2020-06-18
|
||||||
|
|
||||||
|
@ -201,7 +256,8 @@ Bump major release
|
||||||
### Removed
|
### Removed
|
||||||
|
|
||||||
- `Raw` field from `object.GetRequest` and `object.HeadRequest` messages.
|
- `Raw` field from `object.GetRequest` and `object.HeadRequest` messages.
|
||||||
- `Token` field from `object.PutRequest.PutHeader` and `object.DeleteRequest` messages.
|
- `Token` field from `object.PutRequest.PutHeader` and `object.DeleteRequest`
|
||||||
|
messages.
|
||||||
- `VerificationHeader` message.
|
- `VerificationHeader` message.
|
||||||
|
|
||||||
## [0.7.1] - 2020-04-20
|
## [0.7.1] - 2020-04-20
|
||||||
|
@ -256,3 +312,4 @@ Bump major release
|
||||||
[2.1.1]: https://github.com/nspcc-dev/neofs-api/compare/v2.1.0...v2.1.1
|
[2.1.1]: https://github.com/nspcc-dev/neofs-api/compare/v2.1.0...v2.1.1
|
||||||
[2.2.0]: https://github.com/nspcc-dev/neofs-api/compare/v2.1.1...v2.2.0
|
[2.2.0]: https://github.com/nspcc-dev/neofs-api/compare/v2.1.1...v2.2.0
|
||||||
[2.2.1]: https://github.com/nspcc-dev/neofs-api/compare/v2.2.0...v2.2.1
|
[2.2.1]: https://github.com/nspcc-dev/neofs-api/compare/v2.2.0...v2.2.1
|
||||||
|
[2.3.0]: https://github.com/nspcc-dev/neofs-api/compare/v2.2.1...v2.3.0
|
||||||
|
|
|
@ -8,6 +8,11 @@
|
||||||
- [ContainerService](#neo.fs.v2.container.ContainerService)
|
- [ContainerService](#neo.fs.v2.container.ContainerService)
|
||||||
|
|
||||||
- Messages
|
- Messages
|
||||||
|
- [AnnounceUsedSpaceRequest](#neo.fs.v2.container.AnnounceUsedSpaceRequest)
|
||||||
|
- [AnnounceUsedSpaceRequest.Body](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body)
|
||||||
|
- [AnnounceUsedSpaceRequest.Body.Announcement](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement)
|
||||||
|
- [AnnounceUsedSpaceResponse](#neo.fs.v2.container.AnnounceUsedSpaceResponse)
|
||||||
|
- [AnnounceUsedSpaceResponse.Body](#neo.fs.v2.container.AnnounceUsedSpaceResponse.Body)
|
||||||
- [DeleteRequest](#neo.fs.v2.container.DeleteRequest)
|
- [DeleteRequest](#neo.fs.v2.container.DeleteRequest)
|
||||||
- [DeleteRequest.Body](#neo.fs.v2.container.DeleteRequest.Body)
|
- [DeleteRequest.Body](#neo.fs.v2.container.DeleteRequest.Body)
|
||||||
- [DeleteResponse](#neo.fs.v2.container.DeleteResponse)
|
- [DeleteResponse](#neo.fs.v2.container.DeleteResponse)
|
||||||
|
@ -68,6 +73,7 @@ rpc Get(GetRequest) returns (GetResponse);
|
||||||
rpc List(ListRequest) returns (ListResponse);
|
rpc List(ListRequest) returns (ListResponse);
|
||||||
rpc SetExtendedACL(SetExtendedACLRequest) returns (SetExtendedACLResponse);
|
rpc SetExtendedACL(SetExtendedACLRequest) returns (SetExtendedACLResponse);
|
||||||
rpc GetExtendedACL(GetExtendedACLRequest) returns (GetExtendedACLResponse);
|
rpc GetExtendedACL(GetExtendedACLRequest) returns (GetExtendedACLResponse);
|
||||||
|
rpc AnnounceUsedSpace(AnnounceUsedSpaceRequest) returns (AnnounceUsedSpaceResponse);
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -122,9 +128,74 @@ storage.
|
||||||
| Name | Input | Output |
|
| Name | Input | Output |
|
||||||
| ---- | ----- | ------ |
|
| ---- | ----- | ------ |
|
||||||
| GetExtendedACL | [GetExtendedACLRequest](#neo.fs.v2.container.GetExtendedACLRequest) | [GetExtendedACLResponse](#neo.fs.v2.container.GetExtendedACLResponse) |
|
| GetExtendedACL | [GetExtendedACLRequest](#neo.fs.v2.container.GetExtendedACLRequest) | [GetExtendedACLResponse](#neo.fs.v2.container.GetExtendedACLResponse) |
|
||||||
|
#### Method AnnounceUsedSpace
|
||||||
|
|
||||||
|
Announce container used space values for P2P synchronization.
|
||||||
|
|
||||||
|
| Name | Input | Output |
|
||||||
|
| ---- | ----- | ------ |
|
||||||
|
| AnnounceUsedSpace | [AnnounceUsedSpaceRequest](#neo.fs.v2.container.AnnounceUsedSpaceRequest) | [AnnounceUsedSpaceResponse](#neo.fs.v2.container.AnnounceUsedSpaceResponse) |
|
||||||
<!-- end services -->
|
<!-- end services -->
|
||||||
|
|
||||||
|
|
||||||
|
<a name="neo.fs.v2.container.AnnounceUsedSpaceRequest"></a>
|
||||||
|
|
||||||
|
### Message AnnounceUsedSpaceRequest
|
||||||
|
Announce container used space
|
||||||
|
|
||||||
|
|
||||||
|
| Field | Type | Label | Description |
|
||||||
|
| ----- | ---- | ----- | ----------- |
|
||||||
|
| body | [AnnounceUsedSpaceRequest.Body](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body) | | Body of announce used space request message. |
|
||||||
|
| meta_header | [neo.fs.v2.session.RequestMetaHeader](#neo.fs.v2.session.RequestMetaHeader) | | Carries request meta information. Header data is used only to regulate message transport and does not affect request execution. |
|
||||||
|
| verify_header | [neo.fs.v2.session.RequestVerificationHeader](#neo.fs.v2.session.RequestVerificationHeader) | | Carries request verification information. This header is used to authenticate the nodes of the message route and check the correctness of transmission. |
|
||||||
|
|
||||||
|
|
||||||
|
<a name="neo.fs.v2.container.AnnounceUsedSpaceRequest.Body"></a>
|
||||||
|
|
||||||
|
### Message AnnounceUsedSpaceRequest.Body
|
||||||
|
Container used space announcement body.
|
||||||
|
|
||||||
|
|
||||||
|
| Field | Type | Label | Description |
|
||||||
|
| ----- | ---- | ----- | ----------- |
|
||||||
|
| announcements | [AnnounceUsedSpaceRequest.Body.Announcement](#neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement) | repeated | List of announcements. If nodes share several containers, then announcements transferred in a batch. |
|
||||||
|
|
||||||
|
|
||||||
|
<a name="neo.fs.v2.container.AnnounceUsedSpaceRequest.Body.Announcement"></a>
|
||||||
|
|
||||||
|
### Message AnnounceUsedSpaceRequest.Body.Announcement
|
||||||
|
Announcement contains used space information about single container.
|
||||||
|
|
||||||
|
|
||||||
|
| Field | Type | Label | Description |
|
||||||
|
| ----- | ---- | ----- | ----------- |
|
||||||
|
| epoch | [uint64](#uint64) | | Epoch number for which container size estimation was produced. |
|
||||||
|
| container_id | [neo.fs.v2.refs.ContainerID](#neo.fs.v2.refs.ContainerID) | | Identifier of the container. |
|
||||||
|
| used_space | [uint64](#uint64) | | Used space is a sum of object payload sizes of specified container, stored in the node. It must not include inhumed objects. |
|
||||||
|
|
||||||
|
|
||||||
|
<a name="neo.fs.v2.container.AnnounceUsedSpaceResponse"></a>
|
||||||
|
|
||||||
|
### Message AnnounceUsedSpaceResponse
|
||||||
|
Announce container used space
|
||||||
|
|
||||||
|
|
||||||
|
| Field | Type | Label | Description |
|
||||||
|
| ----- | ---- | ----- | ----------- |
|
||||||
|
| body | [AnnounceUsedSpaceResponse.Body](#neo.fs.v2.container.AnnounceUsedSpaceResponse.Body) | | Body of announce used space response message. |
|
||||||
|
| meta_header | [neo.fs.v2.session.ResponseMetaHeader](#neo.fs.v2.session.ResponseMetaHeader) | | Carries response meta information. Header data is used only to regulate message transport and does not affect request execution. |
|
||||||
|
| verify_header | [neo.fs.v2.session.ResponseVerificationHeader](#neo.fs.v2.session.ResponseVerificationHeader) | | Carries response verification information. This header is used to authenticate the nodes of the message route and check the correctness of transmission. |
|
||||||
|
|
||||||
|
|
||||||
|
<a name="neo.fs.v2.container.AnnounceUsedSpaceResponse.Body"></a>
|
||||||
|
|
||||||
|
### Message AnnounceUsedSpaceResponse.Body
|
||||||
|
`AnnounceUsedSpaceResponse` has an empty body because announcements are
|
||||||
|
one way communication.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<a name="neo.fs.v2.container.DeleteRequest"></a>
|
<a name="neo.fs.v2.container.DeleteRequest"></a>
|
||||||
|
|
||||||
### Message DeleteRequest
|
### Message DeleteRequest
|
||||||
|
|
|
@ -177,21 +177,37 @@ explicitly set:
|
||||||
* Subnet \
|
* Subnet \
|
||||||
String ID of Node's storage subnet. There can be only one subnet served
|
String ID of Node's storage subnet. There can be only one subnet served
|
||||||
by the Storage Node.
|
by the Storage Node.
|
||||||
* Locode \
|
* UN-LOCODE \
|
||||||
Node's geographic location in
|
Node's geographic location in
|
||||||
[UN/LOCODE](https://www.unece.org/cefact/codesfortrade/codes_index.html)
|
[UN/LOCODE](https://www.unece.org/cefact/codesfortrade/codes_index.html)
|
||||||
format approximated to the nearest point defined in standard.
|
format approximated to the nearest point defined in the standard.
|
||||||
* Country \
|
* CountryCode \
|
||||||
Country code in
|
Country code in
|
||||||
[ISO 3166-1_alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
|
[ISO 3166-1_alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
|
||||||
format. Calculated automatically from `Locode` attribute
|
format. Calculated automatically from `UN-LOCODE` attribute.
|
||||||
* Region \
|
* Country \
|
||||||
Country's administative subdivision where node is located. Calculated
|
Country short name in English, as defined in
|
||||||
automatically from `Locode` attribute based on `SubDiv` field. Presented
|
[ISO-3166](https://www.iso.org/obp/ui/#search). Calculated automatically
|
||||||
in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) format.
|
from `UN-LOCODE` attribute.
|
||||||
* City \
|
* Location \
|
||||||
City, town, village or rural area name where node is located written
|
Place names are given, whenever possible, in their national language
|
||||||
without diacritics . Calculated automatically from `Locode` attribute.
|
versions as expressed in the Roman alphabet using the 26 characters of
|
||||||
|
the character set adopted for international trade data interchange,
|
||||||
|
written without diacritics . Calculated automatically from `UN-LOCODE`
|
||||||
|
attribute.
|
||||||
|
* SubDivCode \
|
||||||
|
Country's administrative subdivision where node is located. Calculated
|
||||||
|
automatically from `UN-LOCODE` attribute based on `SubDiv` field.
|
||||||
|
Presented in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)
|
||||||
|
format.
|
||||||
|
* SubDiv \
|
||||||
|
Country's administrative subdivision name, as defined in
|
||||||
|
[ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2). Calculated
|
||||||
|
automatically from `UN-LOCODE` attribute.
|
||||||
|
* Continent \
|
||||||
|
Node's continent name according to the [Seven-Continent model]
|
||||||
|
(https://en.wikipedia.org/wiki/Continent#Number). Calculated
|
||||||
|
automatically from `UN-LOCODE` attribute.
|
||||||
|
|
||||||
For detailed description of each well-known attribute please see the
|
For detailed description of each well-known attribute please see the
|
||||||
corresponding section in NeoFS Technical specification.
|
corresponding section in NeoFS Technical specification.
|
||||||
|
|
|
@ -597,6 +597,10 @@ properties:
|
||||||
Returns only objects physically stored in the system. This filter is
|
Returns only objects physically stored in the system. This filter is
|
||||||
activated if the `key` exists, disregarding the value and matcher type.
|
activated if the `key` exists, disregarding the value and matcher type.
|
||||||
|
|
||||||
|
Note: using filters with a key with prefix `$Object:` and match type
|
||||||
|
`NOT_PRESENT `is not recommended since this is not a cross-version approach.
|
||||||
|
Behavior when processing this kind of filters is undefined.
|
||||||
|
|
||||||
|
|
||||||
| Field | Type | Label | Description |
|
| Field | Type | Label | Description |
|
||||||
| ----- | ---- | ----- | ----------- |
|
| ----- | ---- | ----- | ----------- |
|
||||||
|
@ -780,6 +784,8 @@ Type of match expression
|
||||||
| ---- | ------ | ----------- |
|
| ---- | ------ | ----------- |
|
||||||
| MATCH_TYPE_UNSPECIFIED | 0 | Unknown. Not used |
|
| MATCH_TYPE_UNSPECIFIED | 0 | Unknown. Not used |
|
||||||
| STRING_EQUAL | 1 | Full string match |
|
| STRING_EQUAL | 1 | Full string match |
|
||||||
|
| STRING_NOT_EQUAL | 2 | Full string mismatch |
|
||||||
|
| NOT_PRESENT | 3 | Lack of key |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -84,7 +84,7 @@ Session creation request body
|
||||||
|
|
||||||
| Field | Type | Label | Description |
|
| Field | Type | Label | Description |
|
||||||
| ----- | ---- | ----- | ----------- |
|
| ----- | ---- | ----- | ----------- |
|
||||||
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Dession initiating user's or node's key derived `OwnerID`. |
|
| owner_id | [neo.fs.v2.refs.OwnerID](#neo.fs.v2.refs.OwnerID) | | Session initiating user's or node's key derived `OwnerID` |
|
||||||
| expiration | [uint64](#uint64) | | Session expiration `Epoch` |
|
| expiration | [uint64](#uint64) | | Session expiration `Epoch` |
|
||||||
|
|
||||||
|
|
||||||
|
@ -243,7 +243,25 @@ Lifetime parameters of the token. Field names taken from rfc7519.
|
||||||
<a name="neo.fs.v2.session.XHeader"></a>
|
<a name="neo.fs.v2.session.XHeader"></a>
|
||||||
|
|
||||||
### Message XHeader
|
### Message XHeader
|
||||||
Extended headers for Request/Response.
|
Extended headers for Request/Response. May contain any user-defined headers
|
||||||
|
to be interpreted on application level.
|
||||||
|
|
||||||
|
Key name must be unique valid UTF-8 string. Value can't be empty. Requests or
|
||||||
|
Responses with duplicated header names or headers with empty values will be
|
||||||
|
considered invalid.
|
||||||
|
|
||||||
|
There are some "well-known" headers starting with `__NEOFS__` prefix that
|
||||||
|
affect system behaviour:
|
||||||
|
|
||||||
|
* __NEOFS__NETMAP_EPOCH \
|
||||||
|
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
|
||||||
|
current epoch only will be used.
|
||||||
|
* __NEOFS__NETMAP_LOOKUP_DEPTH \
|
||||||
|
If object can't be found using current epoch's netmap, this header limits
|
||||||
|
how many past epochs back the node can lookup. The `value` is string
|
||||||
|
encoded `uint64` in decimal presentation. If set to '0' or not set, the
|
||||||
|
current epoch only will be used.
|
||||||
|
|
||||||
|
|
||||||
| Field | Type | Label | Description |
|
| Field | Type | Label | Description |
|
||||||
|
|
Loading…
Reference in a new issue