Commit graph

420 commits

Author SHA1 Message Date
Stanislav Bogatyrev
fac353b9a4 [#117] Describe well-known X-Headers
When object can't be found using current network map, there is a chance to find
it using netmap versions from previous epochs.

By default only current netmap is used. Well-known X-Headers can be used to set
the specific netmap version and limit how deep into the past the node can go in
the search of an object.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2021-01-11 18:00:34 +03:00
Stanislav Bogatyrev
7f8a4f25ba Release v2.2.0 - Yeouido (여의도, 汝矣島)
Storage Groups based Data Audit updates

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-30 10:22:32 +03:00
Stanislav Bogatyrev
9aeea57083 Update Changelog for Yeouido
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-25 15:29:16 +03:00
Stanislav Bogatyrev
d7ca10d468 docs: Update auto-generated documentation
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-25 15:17:38 +03:00
Stanislav Bogatyrev
bee986c72c [#109] Define data audit result structure
Inner ring nodes conduct data audit and submit audit results. Results are then
saved in audit smart contract for settlement routines to transfer payments.

We don't need to save the full detailed audit report, but only provide enough
information for other subsystems to reward or punish storage nodes.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-25 15:04:56 +03:00
Stanislav Bogatyrev
c5612b01cc [#110] Add hashes to ShortHeader structure
Hashes in ShortHeader are needed for Data Audit process.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-17 12:24:15 +03:00
Stanislav Bogatyrev
974a99e6c2 Update changelog for v2.1.1
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-17 10:28:02 +03:00
Stanislav Bogatyrev
73ccd17adb Clarify object field usage in some requests' eACL filters
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-16 14:05:05 +03:00
Stanislav Bogatyrev
47c7452eb2 [#84] Clarify JSON encoding for OID, CID and OwnerID
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-15 14:29:56 +03:00
Stanislav Bogatyrev
953b2750a2 Release v2.1.0 - Modo (모도, 茅島)
Object split and deletion improvements, documentation clarifications.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-11 14:09:43 +03:00
Stanislav Bogatyrev
baa02d4570 Update auto-generated documentation
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-11 10:20:46 +03:00
Stanislav Bogatyrev
a8c1779690 [#81] Clarify that attribute names must be unique
All types of attribute keys must be unique and can't be repeated in the same
entity.

- Containers with duplicated attribute keys must not be accepted by InnerRing on
  creation.
- Nodes with duplicated attribute keys can't be accepted to NetMap by InnerRing
- Objects with duplicated attribute keys must be considered invalid and not
  accepted in PUT operations

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-11 10:19:46 +03:00
Stanislav Bogatyrev
99a537ea65 Add 2.1.0 release changelog
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-10 19:02:56 +03:00
Alex Vanin
75dd1261e3 Add raw flag in object.GetRangeRequest
Raw flag used to get range of physically stored objects and
ignoring split objects. In case of split object node should
return SplitInfo message.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-10 10:43:42 +03:00
Alex Vanin
7f26542813 Add split_info field in object.GetRangeResponse body
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-10 10:43:42 +03:00
Alex Vanin
7995020a9d Add split_info field in object.HeadResponse body
Head operation returns SplitInfo structure if request has
raw flag and ID of virtual object.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-10 10:43:42 +03:00
Alex Vanin
a5a39257fc Add split_info field in object.GetResponse body
SplitInfo structure from split_info field contains meta information
to assembly the object that has been split into parts.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-12-10 10:43:42 +03:00
Stanislav Bogatyrev
289a6366fa [#51] Define Tombstone type and return it's address on object delete
- Define payload structure for Tombstone object type.
- Return address of the created TS on object delete. Useful for testing

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-09 19:38:16 +03:00
Stanislav Bogatyrev
b930782fd3 [#84] Clarify various types encoding formats
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-09 16:55:02 +03:00
Stanislav Bogatyrev
063ec430d1 [#86] Clarify that Attributes can't have empty values
In case there is a need to set flag-like attributes, the value should be set to
something like `true` or `1`.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-12-09 16:51:21 +03:00
Stanislav Bogatyrev
29c9e1d68b typo fix
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-25 16:37:08 +03:00
Stanislav Bogatyrev
73143ac362 Add split_id search attribute and remove childfree
After adding `split_id` there is no need to have $Object:CHILDFREE.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-25 13:43:20 +03:00
Stanislav Bogatyrev
71469da602 Typo fixes
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-25 13:43:20 +03:00
Leonard Lyubich
f4215add9e [#94] acl: Add json_name notation to EACLTable.Version field
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-11-24 11:51:17 +03:00
Stanislav Bogatyrev
55c04e485e Add header.split.split_id header to object
In some cases like nspcc-dev/neofs-node#167 there is no simple way to identify
where does the object part belongs to. Adding `split_id` as the required field
will simplify split object processing.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-17 11:03:33 +03:00
Stanislav Bogatyrev
3cdde6492b Mention object split limitation by type
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-10 09:26:11 +03:00
Stanislav Bogatyrev
2613670553 [nspcc-dev/neofs-node#151] Clarify $Object:ROOT filter description
* It's expected by app developers that ROOT filter will return the list of objects
created by user, without supplementary objects like split object parts,
tombstones and storage groups.

* Rename LEAF to PHY as it's purpose it to return physically existing objects.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-09 19:00:39 +03:00
Stanislav Bogatyrev
9a319905be [#87] Add object ID key in extended ACL filters
Extended ACL description lacks `objectID` key in filters. It's useful to control
access to specific object.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-11-09 17:33:19 +03:00
Alex Vanin
35baf1ebfb Release v2.0.2
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-10-27 15:48:38 +03:00
Alex Vanin
5916eb1170 [#80] Clarify well-known object filters parent and childfree
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2020-10-23 18:17:28 +03:00
Stanislav Bogatyrev
63215a6302 Update auto-generated docs
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-23 16:27:34 +03:00
Stanislav Bogatyrev
b063e5b910 Rename object search and ACL filters fields for consistency
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-23 16:27:34 +03:00
Stanislav Bogatyrev
f1acb8c14f Typo fix
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-23 15:29:37 +03:00
Stanislav Bogatyrev
8056035132 Clarify object search filter header name usage
Related: nspcc-dev/neofs-spec#12

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-23 15:29:37 +03:00
Stanislav Bogatyrev
31e1801c4a Add more well-known attributes
Resolves nspcc-dev/neofs-api-go#172

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-21 19:37:50 +03:00
Stanislav Bogatyrev
bcc6f68eda [#75] Add clarification for BearerToken.body.owner_id
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-21 09:59:04 +03:00
Stanislav Bogatyrev
0dd5b92edc Release v2.0.1 2020-10-19 21:42:38 +03:00
Stanislav Bogatyrev
6123bbd0e1 [#73] Update auto-generated docs
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 17:14:52 +03:00
Stanislav Bogatyrev
eed8754aaa [#73] Add JSON field names to storagegroup package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
b48723bd8c [#73] Add JSON field names to session package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
f7bd46baf8 [#73] Add JSON field names to refs package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
a1d9527f34 [#73] Add JSON field names to object package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
6ea8bc3214 [#73] Add JSON field names to netmap package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
d0d74c3a2f [#73] Add JSON field names to container package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
98dab3f354 [#73] Change JSON field names in acl package
Changing naming style to meet Protobuf and Goggle JSON style guides.

https://google.github.io/styleguide/jsoncstyleguide.xml
https://developers.google.com/protocol-buffers/docs/proto3#json

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
44d7f7a622 [#73] Add JSON field names to accounting package
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-19 14:49:14 +03:00
Evgenii Stratonikov
4f01f4b902 [#73] Add json field names to oblect struct
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2020-10-19 14:49:14 +03:00
Stanislav Bogatyrev
a6ecab41b8 Update auto-generated docs
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-16 14:40:24 +03:00
Stanislav Bogatyrev
095a6cb043 Remove docs directory
Human-written API documentation is now in NeoFS Specification.

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-16 12:37:19 +03:00
Stanislav Bogatyrev
bfe43818eb Update storagegroup package docs
Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
2020-10-16 12:37:19 +03:00