Commit Graph

103 Commits (dacac0b53dbef0793924cd05ecd9b0cbf8740383)

Author SHA1 Message Date
Evgenii Stratonikov dacac0b53d [#50] Makefile: Add code formatting targets
Tests / Tests (1.19) (pull_request) Successful in 2m48s Details
DCO action / DCO (pull_request) Successful in 2m53s Details
Tests / Tests (1.20) (pull_request) Successful in 2m52s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 15:00:05 +03:00
Evgenii Stratonikov 6e9c770142 [#50] Drop notaryless deploy parameter
DCO action / DCO (pull_request) Successful in 1m20s Details
Tests / Tests (1.20) (pull_request) Successful in 3m13s Details
Tests / Tests (1.19) (pull_request) Successful in 4m11s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-07 14:56:21 +03:00
Evgenii Stratonikov 9ed3845aa9 [#44] policy: Initial implementation
DCO action / DCO (pull_request) Successful in 1m7s Details
Tests / Tests (1.19) (pull_request) Successful in 1m21s Details
Tests / Tests (1.20) (pull_request) Successful in 1m18s Details
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-11-02 09:54:36 +03:00
Alexey Vanin e834a66117 [#45] balance: Fix inconsistent fee of transfer operations
DCO action / DCO (pull_request) Successful in 1m58s Details
Tests / Tests (1.19) (pull_request) Successful in 2m5s Details
Tests / Tests (1.20) (pull_request) Successful in 2m5s Details
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-10-24 13:42:30 +03:00
Alexey Vanin 184fcdc5a7 [#45] container: Add test of inconsistent container creation fee
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-10-24 13:28:11 +03:00
Evgenii Stratonikov bab6b619d0 [#42] container: Make GAS costs more predictable in Delete()
Persisting a transaction is done in 2 stages:
1. TestInvoke
2. Sign and send to the network.
3. At some point the tx is persisted.
Some time passes between 1 and 3, this could lead to different GAS
costs. It is a known issue for container delete: different epoch can
have different size in bytes and thus different cost to store.
Here we introduce fixed-length encoding for integers, so that the
problem can be avoided.

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-10-24 13:28:10 +03:00
Evgenii Stratonikov 2be81b1def [#42] common: Add routines for fixed-width uint64 marshaling
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-10-24 13:28:10 +03:00
Evgenii Stratonikov ab0a899a28 [#42] container: Add failing tests for different epoch deletion
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-10-24 13:28:10 +03:00
Evgenii Stratonikov c6a7820363 container: Add DeletionInfo() method
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-10 17:13:07 +00:00
Evgenii Stratonikov 2b1fa53b67 tests: Move owner ID calculation to a separate function
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-08-10 17:13:07 +00:00
Anton Nikiforov 2da0ff5750 [#27] Add public key as argument for container_contract.Delete() method
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-06-01 14:08:21 +03:00
Alexey Vanin 6a19989aa6 [#1] tests: Update domain email after rebranding
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-05-17 10:52:10 +03:00
Dmitrii Stepanov 8537293e11 [#20] subnet: Drop contract
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-04-17 14:29:30 +03:00
Anton Nikiforov d8530284fd [#7] Remove notary disabled code
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-03-14 12:09:22 +03:00
Alexey Vanin 19a8ef2d02 Rename package name
Due to source code relocation from GitHub.

Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-03-07 14:06:21 +03:00
Evgenii Stratonikov 4f3c08f552 [#300] container: Allow to iterate over container list
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2023-01-16 14:40:21 +03:00
Vladimir Domnich 03bff785d2 [#293] container: Add IterateContainerSizes method
Add method that allows to iterate over estimation records.

Update tests to assert that list of estimations built with existing methods
is identical to estimations from iterator.

Signed-off-by: Vladimir Domnich <v.domnich@yadro.com>
2023-01-16 14:40:21 +03:00
Denis Kirillov 9c004cab2e [TrueCloudLab#3] container: Rename neofs to frostfs
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-01-11 17:19:35 +03:00
Denis Kirillov a21630c1d7 [TrueCloudLab#3] neofsid: Rename contract to frostfsid
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-01-11 17:19:35 +03:00
Denis Kirillov 402c13a607 [TrueCloudLab#3] processing: Rename neofs to frostfs
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-01-11 17:19:35 +03:00
Denis Kirillov 0093e89ad9 [TrueCloudLab#3] neofs: Rename contract to frostfs
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-01-11 17:19:35 +03:00
Evgenii Stratonikov 6c805c1b4e Move from nspcc-dev to TrueCloudLab
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-12-13 11:12:48 +03:00
Evgenii Stratonikov 38246cd54f [#284] tests: Add a test for checking VERSION file
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-10-18 09:54:53 +03:00
Leonard Lyubich d95bc53589 [#269] netmap: Return same type from reading methods
There is a need to return similar structure of information about the
storage nodes from the contract storage readers. In previous
implementation some methods didn't return node state which can differ
with the one encoded in the node's BLOB.

Define `Node` structure of the information about the storage nodes
recorded in the contract storage. Return `[]Node` from all related
methods.

Also improve docs of touched contract methods.

Signed-off-by: Leonard Lyubich <ctulhurider@gmail.com>
2022-09-30 17:31:58 +04:00
Evgenii Stratonikov 9785f9b2c7 [#271] netmap: Allow to move node back to `Online` state
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Evgenii Stratonikov cb684994fc [#269] netmap: Support `Maintenance` node state
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Evgenii Stratonikov b4fdd854b7 [#259] nns: Check admin in `Renew`
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-29 12:03:24 +03:00
Evgenii Stratonikov 5b5ff8cb33 [#261] nns: Set expiration time based on arguments
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-29 12:03:24 +03:00
Evgenii Stratonikov f1f2101dc6 [#242] container: allow to fetch total amount of countainers
There are 2 approaches:
1. Use `storage.Find` to enumerate all containers.
2. Store a counter by a separate key.

Here we implemented 1, because this method is readonly (thus GAS cost it
not a problem) and simpler to implement.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-05-24 13:31:18 +03:00
Elizaveta Chichindaeva 335b04d9a6 [#240] English Check
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
2022-04-26 23:22:06 +03:00
Evgenii Stratonikov 4a0f0d7408 [#232] netmap: Allow to configure snapshot history size
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-29 09:44:38 +03:00
Evgenii Stratonikov 33d5568511 [#234] *: Fix some lint issues
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-28 10:27:25 +03:00
Evgenii Stratonikov 01a7163d1e [#229] netmap: Improve `UpdateState` in notary-enabled environment
Require `UpdateState` to be called by both storage node and the alphabet
in notary-enabled environment, fail if only one of the signatures is present.
`UpdateStateIR` can be use for force updates by the alphabet.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-22 12:56:16 +03:00
Evgenii Stratonikov 666e1d6d8d [#224] netmap: Add tests for `NewEpoch`
Ensure snapshots are handled properly.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 18:57:43 +03:00
Evgenii Stratonikov f6766a144f [#225] netmap: Do not emit some events in notary-enabled mode
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Evgenii Stratonikov a4f9d52cfc [#225] netmap: Rename `Register` to `AddPeerIR`
Similar to `UpdateState`/`UpdateStateIR` pair.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Evgenii Stratonikov 9662f9f4db [#225] netmap: Split `UpdateState` method for notary-enabled environment
Split methods similar to `AddPeer`/`Register` pair from b104a2ccbc .

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Pavel Karpy 912eaab8d8 [#198] test: Adopt `neotest` changes
This reverts commit 8418183498.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-01-21 11:03:47 +03:00
Evgenii Stratonikov 676daa1782 [#215] container: remove old estimations when adding new ones
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Evgenii Stratonikov 7bca6bf782 [#215] container/tests: add tests for container size estimation
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Evgenii Stratonikov 53f102344f [#215] container/tests: add helper for dummy container creation
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Alex Vanin 8418183498 Revert "[#198] test: Adopt `neotest` changes"
This reverts commit 17907f9457.
2022-01-14 10:59:25 +03:00
Pavel Karpy 17907f9457 [#198] test: Adopt `neotest` changes
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-14 14:51:43 +03:00
Alex Vanin 39fc2b8ac4 [#194] container: Fix tests
One can't register domain in advance when zone
owner is container contract.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-12-08 18:19:07 +03:00
Pavel Karpy 9b50e1bb88 [#192] processing: Add processing contract test
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-07 11:28:51 +03:00
Pavel Karpy c840498b6f [#192] alphabet: Add alphabet contract tests
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-07 11:28:51 +03:00
Pavel Karpy e14ffbe68b [#192] proxy: Add proxy contract tests
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-07 11:28:51 +03:00
Evgenii Stratonikov b104a2ccbc [#154] netmap: implement `Register` method
For notary-disabled environment it makes sense to split node
registration and actual candidate update into separate methods.
This way we have less complicate logic in `AddPeer` and overall
registration flow is more understandable.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-06 11:03:33 +03:00
Evgenii Stratonikov 4248424a44 nns: disallow conflicting records on register
Require no records '*.domain' to be present when registering domain.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-02 14:14:22 +03:00
Evgenii Stratonikov f12c44fc78 nns: allow to register arbitrary-level domains
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-02 14:14:22 +03:00