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
2d0101033b
[ #270 ] netmap: Export NodeState
type
...
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Evgenii Stratonikov
53d9a24afa
[ #246 ] netmap: Remove outdated update logic
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-06-07 14:14:29 +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
fd70f28b47
[ #236 ] *: Notify user on success
...
Add notifications to:
- container put, delete, setEACL
- netmap addPeer, updateState
Because notifications are limited in size (currently arguments should be
less than 1024 bytes) provide only minimal information, such as entity
ID (container ID or node public key).
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-04-13 12:14:35 +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
5fc7474447
[ #232 ] *: Remove old update code
...
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
e9cfe6194f
[ #222 ] netmap: Store public keys in _deploy
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 12:04:47 +03:00
Evgenii Stratonikov
03afb80a14
[ #222 ] *: Replace IRNode with raw public keys
...
Only leave `IRNode` in neofs contract because it is public.
The newly added conversion in `AlphabetList` shouldn't be a problem
because this is a read method.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 11:33:27 +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
624cc0f1c4
[ #224 ] netmap: Increase snapshot history size to 10
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 18:57:43 +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
9884f8e68f
[ #224 ] netmap: Refactor snapshot processing
...
Swap keys instead of unmarshaling/marshaling snapshot during `NewEpoch`.
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
Evgenii Stratonikov
b0872bb54c
*: remove update migration code
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-07 17:49:07 +03:00
Evgenii Stratonikov
74cc2d0aea
[ #204 ] *: check contract version during update
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-11 11:55:04 +03:00
Evgenii Stratonikov
1944a4332b
[ #202 ] *: remove owner from contract storage
...
It is no longer used and should've be removed on update.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-28 13:32:28 +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
Pavel Karpy
53a6b198d9
[ #184 ] *: Cast to struct `iterator.Value() k/v pair
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
e6a33e8193
[ #185 ] *: Use storage.DeserializeValues
flag for search
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
23d9799e51
[ #185 ] *: Use neo-go's interop
constants instead of local
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
f78a0e32b8
[ #185 ] *: Cast args of _deploy
method to struct
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
27c97237cf
[ #184 ] *: Delete method prefix from runtime.Log()
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
2ee2344e5f
[ #184 ] *: Move all panics on witness checks in common
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
ac89694eeb
[ #184 ] *: Remove method prefix in panic messages
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy
4961e9b436
[ #186 ] *: Add // V2 format
comment
...
Add `// V2 format` comment to V2 specific code
in contracts. In `subnet` contract change comment
to sync with other.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 11:51:01 +03:00
Evgenii Stratonikov
da7f7eb88f
[ #164 ] *: provide version as the last argument
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-19 13:38:15 +03:00
Leonard Lyubich
68eac87e64
[ #154 ] netmap: allow only alphabet calls in updateState
...
This reverts commit a9503b5c
2021-11-16 17:26:26 +03:00
Evgenii Stratonikov
a9503b5cf8
Revert "[ #152 ] netmap: allow only alphabet calls in updateState
"
...
This reverts commit e1ee1c203c
.
2021-10-19 17:46:26 +03:00
Evgenii Stratonikov
81c12b3f24
Revert "[ #152 ] netmap: allow only alphabet calls in addPeer
"
...
This reverts commit c008910157
.
2021-10-19 17:46:26 +03:00
Evgenii Stratonikov
2472678b9f
[ #151 ] netmap: fix error message in _deploy
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 13:11:53 +03:00
Evgenii Stratonikov
c5e026c6e7
[ #151 ] netmap: allow to update config values in _deploy
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 13:11:53 +03:00
Evgenii Stratonikov
e1ee1c203c
[ #152 ] netmap: allow only alphabet calls in updateState
...
If notary is enabled only alphabet calls are expected.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 12:46:19 +03:00
Evgenii Stratonikov
c008910157
[ #152 ] netmap: allow only alphabet calls in addPeer
...
If notary is enabled only alphabet calls are expected.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 12:46:19 +03:00
Evgenii Stratonikov
a72392f672
[ #146 ] netmap: allow to update peer info
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 12:02:19 +03:00
Alex Vanin
6d0c5d110c
[ #107 ] Remove contract owner argument at contract deploy
...
Contract owner entity does exist anymore. Contract migration
now managed by side chain committee which are Alphabet nodes of
the Inner Ring.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 11:06:48 +03:00
Alex Vanin
edd4864e39
[ #130 ] Panic at contract update failures
...
There is no practical cases not to panic at contract
update routine.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 09:54:52 +03:00
Alex Vanin
b555e200f4
[ #128 ] Rename migrate methods to update
...
Neo Legacy used migration mechanism to update contracts.
N3 provides update method in native management contract.
Therefore, it makes sense to rename `Migrate` to `Update`.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-21 12:28:35 +03:00
Evgenii Stratonikov
f840afb4cc
netmap: provide default configuration in _deploy
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-07-29 15:14:57 +03:00
Alex Vanin
8bd25230fa
[ #118 ] *: Encode semver in version number
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-29 15:01:50 +03:00
Alex Vanin
c7ed05cc2e
[ #112 ] Remove to v0.9.2 migration code
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 15:03:40 +03:00
Alex Vanin
9840f29372
[ #105 ] netmap: Add docs
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
8b7d08cb08
[ #105 ] *: Remove contract
from package names
...
`contract` postfix is redundant and makes autogenerated
docs looks ugly.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
787bd3b63c
[ #110 ] netmap: Store block number of last epoch
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 11:08:19 +03:00
Alex Vanin
c368eac796
[ #100 ] netmap: Migrate netmap candidates storage
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 14:13:36 +03:00