forked from TrueCloudLab/frostfs-api
Release v2.4.0 - Ganghwado (강화도, 江華島)
Added `netmap.NetworkInfo` RPC. Signed-off-by: Alex Vanin <alexey@nspcc.ru>
This commit is contained in:
parent
1594dc1f60
commit
f9e7643402
4 changed files with 94 additions and 1 deletions
18
CHANGELOG.md
18
CHANGELOG.md
|
@ -1,5 +1,22 @@
|
|||
# Changelog
|
||||
|
||||
## [2.4.0] - 2021-02-26 - Ganghwado (강화도, 江華島)
|
||||
|
||||
This release provides new RPC method to fetch network info from storage node.
|
||||
By getting current epoch value, application might set up correct expiration
|
||||
values in the objects.
|
||||
|
||||
### Added
|
||||
|
||||
- `netmap.NetworkInfo` request for getting node's network view.
|
||||
- Release instructions.
|
||||
|
||||
### Changed
|
||||
|
||||
- Clarified processing of empty search query in `object.Search` RPC.
|
||||
- Specified connection of tombstone expiration value with well-known
|
||||
`__NEOFS__EXPIRATION_EPOCH` object attribute.
|
||||
|
||||
## [2.3.0] - 2021-02-11 - Seonyudo (선유도, 仙遊島)
|
||||
|
||||
This release brings support for nodes to exchange information about disk space
|
||||
|
@ -313,3 +330,4 @@ Bump major release
|
|||
[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.3.0]: https://github.com/nspcc-dev/neofs-api/compare/v2.2.1...v2.3.0
|
||||
[2.4.0]: https://github.com/nspcc-dev/neofs-api/compare/v2.3.0...v2.4.0
|
||||
|
|
|
@ -12,12 +12,17 @@
|
|||
- [LocalNodeInfoRequest.Body](#neo.fs.v2.netmap.LocalNodeInfoRequest.Body)
|
||||
- [LocalNodeInfoResponse](#neo.fs.v2.netmap.LocalNodeInfoResponse)
|
||||
- [LocalNodeInfoResponse.Body](#neo.fs.v2.netmap.LocalNodeInfoResponse.Body)
|
||||
- [NetworkInfoRequest](#neo.fs.v2.netmap.NetworkInfoRequest)
|
||||
- [NetworkInfoRequest.Body](#neo.fs.v2.netmap.NetworkInfoRequest.Body)
|
||||
- [NetworkInfoResponse](#neo.fs.v2.netmap.NetworkInfoResponse)
|
||||
- [NetworkInfoResponse.Body](#neo.fs.v2.netmap.NetworkInfoResponse.Body)
|
||||
|
||||
|
||||
- [netmap/types.proto](#netmap/types.proto)
|
||||
|
||||
- Messages
|
||||
- [Filter](#neo.fs.v2.netmap.Filter)
|
||||
- [NetworkInfo](#neo.fs.v2.netmap.NetworkInfo)
|
||||
- [NodeInfo](#neo.fs.v2.netmap.NodeInfo)
|
||||
- [NodeInfo.Attribute](#neo.fs.v2.netmap.NodeInfo.Attribute)
|
||||
- [PlacementPolicy](#neo.fs.v2.netmap.PlacementPolicy)
|
||||
|
@ -47,6 +52,7 @@ NeoFS nodes.
|
|||
|
||||
```
|
||||
rpc LocalNodeInfo(LocalNodeInfoRequest) returns (LocalNodeInfoResponse);
|
||||
rpc NetworkInfo(NetworkInfoRequest) returns (NetworkInfoResponse);
|
||||
|
||||
```
|
||||
|
||||
|
@ -61,6 +67,13 @@ further communication. Can also be used to check if node is up and running.
|
|||
| Name | Input | Output |
|
||||
| ---- | ----- | ------ |
|
||||
| LocalNodeInfo | [LocalNodeInfoRequest](#neo.fs.v2.netmap.LocalNodeInfoRequest) | [LocalNodeInfoResponse](#neo.fs.v2.netmap.LocalNodeInfoResponse) |
|
||||
#### Method NetworkInfo
|
||||
|
||||
Read recent information about the NeoFS network.
|
||||
|
||||
| Name | Input | Output |
|
||||
| ---- | ----- | ------ |
|
||||
| NetworkInfo | [NetworkInfoRequest](#neo.fs.v2.netmap.NetworkInfoRequest) | [NetworkInfoResponse](#neo.fs.v2.netmap.NetworkInfoResponse) |
|
||||
<!-- end services -->
|
||||
|
||||
|
||||
|
@ -108,6 +121,51 @@ Local Node Info, including API Version in use.
|
|||
| version | [neo.fs.v2.refs.Version](#neo.fs.v2.refs.Version) | | Latest NeoFS API version in use |
|
||||
| node_info | [NodeInfo](#neo.fs.v2.netmap.NodeInfo) | | NodeInfo structure with recent information from node itself |
|
||||
|
||||
|
||||
<a name="neo.fs.v2.netmap.NetworkInfoRequest"></a>
|
||||
|
||||
### Message NetworkInfoRequest
|
||||
Get NetworkInfo structure with the network view from particular node.
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| body | [NetworkInfoRequest.Body](#neo.fs.v2.netmap.NetworkInfoRequest.Body) | | Body of the NetworkInfo 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.netmap.NetworkInfoRequest.Body"></a>
|
||||
|
||||
### Message NetworkInfoRequest.Body
|
||||
NetworkInfo request body is empty.
|
||||
|
||||
|
||||
|
||||
<a name="neo.fs.v2.netmap.NetworkInfoResponse"></a>
|
||||
|
||||
### Message NetworkInfoResponse
|
||||
Response with NetworkInfo structure including current epoch and
|
||||
sidechain magic number.
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| body | [NetworkInfoResponse.Body](#neo.fs.v2.netmap.NetworkInfoResponse.Body) | | Body of the NetworkInfo 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 response 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.netmap.NetworkInfoResponse.Body"></a>
|
||||
|
||||
### Message NetworkInfoResponse.Body
|
||||
Information about the network.
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| network_info | [NetworkInfo](#neo.fs.v2.netmap.NetworkInfo) | | NetworkInfo structure with recent information. |
|
||||
|
||||
<!-- end messages -->
|
||||
|
||||
<!-- end enums -->
|
||||
|
@ -139,6 +197,18 @@ results, that will satisfy filter's conditions.
|
|||
| filters | [Filter](#neo.fs.v2.netmap.Filter) | repeated | List of inner filters. Top level operation will be applied to the whole list. |
|
||||
|
||||
|
||||
<a name="neo.fs.v2.netmap.NetworkInfo"></a>
|
||||
|
||||
### Message NetworkInfo
|
||||
Information about NeoFS network
|
||||
|
||||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| current_epoch | [uint64](#uint64) | | Number of the current epoch in the NeoFS network. |
|
||||
| magic_number | [uint64](#uint64) | | Magic number of the sidechain of the NeoFS network. |
|
||||
|
||||
|
||||
<a name="neo.fs.v2.netmap.NodeInfo"></a>
|
||||
|
||||
### Message NodeInfo
|
||||
|
|
|
@ -554,6 +554,11 @@ Object Search request body
|
|||
Filter structure checks if object header field or attribute content
|
||||
matches a value.
|
||||
|
||||
If no filters set, search request will return all objects of the
|
||||
container, including Regular object, Tombstones and Storage Group
|
||||
objects. Most human users expect to get only object they can directly
|
||||
work with. In that case the `$Object:ROOT` filter should be used.
|
||||
|
||||
By default `key` field refers to the corresponding object's `Attribute`.
|
||||
Some Object's header fields can also be accessed by adding `$Object:`
|
||||
prefix to the name. Here is the list of fields available via this prefix:
|
||||
|
|
|
@ -31,7 +31,7 @@ purged from the NeoFS network.
|
|||
|
||||
| Field | Type | Label | Description |
|
||||
| ----- | ---- | ----- | ----------- |
|
||||
| expiration_epoch | [uint64](#uint64) | | Last NeoFS epoch number of the tombstone lifetime. It's set by tombstone creator depending on current NeoFS network settings. |
|
||||
| expiration_epoch | [uint64](#uint64) | | Last NeoFS epoch number of the tombstone lifetime. It's set by tombstone creator depending on current NeoFS network settings. Tombstone object must have the same expiration epoch value in `__NEOFS__EXPIRATION_EPOCH` attribute. Otherwise tombstone will be rejected by storage node. |
|
||||
| split_id | [bytes](#bytes) | | 16 byte UUID used to identify the split object hierarchy parts. Must be unique inside 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. |
|
||||
|
||||
|
|
Loading…
Reference in a new issue