Anton Nikiforov
f74d058c2e
[ #1072 ] node, ir, morph: Set scope `None` when in upgrade mode
...
DCO action / DCO (pull_request) Successful in 1m50s
Details
Build / Build Components (1.21) (pull_request) Successful in 4m25s
Details
Build / Build Components (1.20) (pull_request) Successful in 4m35s
Details
Vulncheck / Vulncheck (pull_request) Failing after 3m51s
Details
Tests and linters / gopls check (pull_request) Successful in 6m0s
Details
Tests and linters / Staticcheck (pull_request) Successful in 6m6s
Details
Tests and linters / Lint (pull_request) Successful in 6m42s
Details
Tests and linters / Tests (1.20) (pull_request) Successful in 8m12s
Details
Tests and linters / Tests (1.21) (pull_request) Successful in 8m34s
Details
Tests and linters / Tests with -race (pull_request) Successful in 8m33s
Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2024-04-04 11:24:45 +03:00
Anton Nikiforov
c8ce6e9fe4
[ #1072 ] node, ir: Add new config option `kludge_compatibility_mode`
...
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2024-04-04 11:24:37 +03:00
Ekaterina Lebedeva
2d4c0a0f4a
[ #552 ] Add systemd notifications to ir service
...
DCO action / DCO (pull_request) Successful in 3m19s
Details
Vulncheck / Vulncheck (pull_request) Successful in 3m25s
Details
Build / Build Components (1.21) (pull_request) Successful in 4m27s
Details
Build / Build Components (1.20) (pull_request) Successful in 4m41s
Details
Tests and linters / Staticcheck (pull_request) Successful in 5m5s
Details
Tests and linters / Lint (pull_request) Successful in 5m57s
Details
Tests and linters / Tests (1.20) (pull_request) Successful in 13m25s
Details
Tests and linters / Tests (1.21) (pull_request) Successful in 14m13s
Details
Tests and linters / Tests with -race (pull_request) Successful in 16m15s
Details
Signed-off-by: Ekaterina Lebedeva <ekaterina.lebedeva@yadro.com>
2023-12-13 17:51:41 +03:00
Dmitrii Stepanov
79088baa06
[ #772 ] node: Apply gofumpt
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-10-31 17:03:03 +03:00
Dmitrii Stepanov
189dbb01be
[ #733 ] frostfs-cli: Add `control ir remove-container`
...
DCO action / DCO (pull_request) Successful in 3m51s
Details
Vulncheck / Vulncheck (pull_request) Successful in 3m49s
Details
Build / Build Components (1.21) (pull_request) Successful in 4m34s
Details
Build / Build Components (1.20) (pull_request) Successful in 6m21s
Details
Tests and linters / Tests (1.21) (pull_request) Successful in 9m1s
Details
Tests and linters / Tests (1.20) (pull_request) Successful in 9m12s
Details
Tests and linters / Staticcheck (pull_request) Successful in 6m40s
Details
Tests and linters / Tests with -race (pull_request) Successful in 9m21s
Details
Tests and linters / Lint (pull_request) Successful in 9m39s
Details
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-10-19 16:22:18 +03:00
Anton Nikiforov
3a997d1207
[ #680 ] metrics: Initialize log metrics together with services
...
DCO action / DCO (pull_request) Successful in 3m31s
Details
Vulncheck / Vulncheck (pull_request) Successful in 3m17s
Details
Build / Build Components (1.21) (pull_request) Successful in 3m56s
Details
Tests and linters / Staticcheck (pull_request) Successful in 5m13s
Details
Tests and linters / Lint (pull_request) Successful in 5m50s
Details
Tests and linters / Tests (1.20) (pull_request) Successful in 7m31s
Details
Build / Build Components (1.20) (pull_request) Successful in 7m44s
Details
Tests and linters / Tests (1.21) (pull_request) Successful in 7m32s
Details
Tests and linters / Tests with -race (pull_request) Successful in 7m33s
Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-10-11 17:08:03 +03:00
Alejandro Lopez
4887f489a1
[ #17 ] Add morph client metrics
...
ci/woodpecker/pr/pre-commit Pipeline was successful
Details
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-06-13 14:06:04 +03:00
Airat Arifullin
90e9247b69
[ #371 ] ir: Add morph cache metrics
...
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Signed-off-by: Airat Arifullin a.arifullin@yadro.com
2023-06-13 10:10:13 +00:00
Alejandro Lopez
f7c4c07453
[#xx] Create innerring metrics before metrics usage
...
ci/woodpecker/pr/pre-commit Pipeline was successful
Details
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Signed-off-by: Alejandro Lopez <a.lopez@yadro.com>
2023-06-01 10:07:48 +03:00
Dmitrii Stepanov
0ab589dd52
[ #338 ] ir: Always enable notary on sidechain
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-05-24 08:44:47 +00:00
Evgenii Stratonikov
4b768fd115
[ #381 ] *: Move to sync/atomic
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-05-23 08:18:01 +03:00
Anton Nikiforov
6f47c75e43
[ #125 ] ir: Set extra wallets on SIGHUP
...
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-05-16 12:47:43 +00:00
Anton Nikiforov
800eb5e983
[ #125 ] ir: Reconfigure pprof and metrics on SIGHUP
...
ci/woodpecker/pr/pre-commit Pipeline was successful
Details
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-05-11 12:38:34 +03:00
Evgenii Stratonikov
8879c6ea4a
[ #248 ] innerring: Remove audit and settlement code
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-04-28 17:00:43 +03:00
Evgenii Stratonikov
f07e2d4812
[ #285 ] lint: Fix revive/unused-parameter
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-04-26 17:35:04 +03:00
Dmitrii Stepanov
f07d4158f5
[ #249 ] node: Drop subnet from IR and morph
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-04-17 09:46:02 +03:00
Evgenii Stratonikov
0e31c12e63
[ #240 ] logs: Move log messages to constants
...
Drop duplicate entities.
Format entities.
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-04-14 05:06:09 +00:00
Dmitrii Stepanov
e815b19101
[ #219 ] morph: Resolve containedctx linter
...
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-04-07 15:43:20 +03:00
Evgenii Stratonikov
0948a280fa
[ #195 ] morph: use blocking unlimited pool for notifications
...
ci/woodpecker/push/pre-commit Pipeline failed
Details
With non-blocking pool restricted by 10 in capacity, the probability of
dropping events is unexpectedly big. Notifications are an essential part of the FrostFS,
we should not drop anything, especially new epochs.
```
Mar 31 07:07:03 vedi neofs-ir[19164]: 2023-03-31T07:07:03.901Z debug subscriber/subscriber.go:154 new notification event from sidechain {"name": "NewEpoch"}
Mar 31 07:07:03 vedi neofs-ir[19164]: 2023-03-31T07:07:03.901Z warn event/listener.go:248 listener worker pool drained {"chain": "morph", "capacity": 10}
```
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-04-03 15:58:16 +00:00
Pavel Karpy
44d5412e10
[ #181 ] ir: Do not deposit notary GAS by non-alphabet nodes
...
Signed-off-by: Pavel Karpy <p.karpy@yadro.com>
2023-03-31 12:51:12 +03:00
Dmitrii Stepanov
4d160bd4ab
[ #185 ] ir: Refactor ir service creation
...
Resolve funlen linter for New function
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-03-30 19:10:33 +00:00
Dmitrii Stepanov
c8a6978563
[ #185 ] ir: Refactor ir start
...
Resolve funlen linter for Server.Start method
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-03-30 19:10:33 +00:00
Pavel Karpy
e843e7f090
[ #184 ] ir: Delete unused config reader param
...
ci/woodpecker/push/pre-commit Pipeline was successful
Details
Not used since notary environments do endless and non-configurable
deposits.
Signed-off-by: Pavel Karpy <p.karpy@yadro.com>
2023-03-29 10:34:54 +00:00
Dmitrii Stepanov
481a1ca6f3
[ #148 ] linter: Add gocognit linter
...
Code with high cognitive complexity is hard intuitively to understand
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-03-21 09:54:41 +03:00
Dmitrii Stepanov
97c36ed3ec
[ #148 ] linter: Add funlen linter
...
Long functions are hard to understand and source of errors
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2023-03-21 09:54:41 +03:00
Artem Tataurov
db3ccd2762
[ #128 ] innerring: Add GAS pouring mechanism for a configurable list of wallets
...
Signed-off-by: Artem Tataurov <a.tataurov@yadro.com>
2023-03-20 12:50:05 +00:00
Anton Nikiforov
5890cd4d7d
[ #50 ] ir: Fix config property name for prometheus
...
Signed-off-by: Anton Nikiforov <an.nikiforov@yadro.com>
2023-03-13 11:24:42 +00:00
Alexey Vanin
20de74a505
Rename package name
...
Due to source code relocation from GitHub.
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2023-03-07 16:38:26 +03:00
Evgenii Stratonikov
054bc4a727
[ #11 ] Rename contract-related `NeoFS` occurences
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-01-12 08:55:47 +03:00
Evgenii Stratonikov
9cb4b4cc17
[ #11 ] Rename `neofsid` contract to `frostfsid`
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-01-12 08:55:47 +03:00
Evgenii Stratonikov
19d180b510
[ #11 ] Rename `neofs` contract to `frostfs`
...
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
2023-01-12 08:55:47 +03:00
Pavel Karpy
923f84722a
Move to frostfs-node
...
Signed-off-by: Pavel Karpy <p.karpy@yadro.com>
2022-12-28 15:04:29 +03:00
Pavel Karpy
50d28b72c3
[ #2075 ] node, ir: Log notary state with `info`
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-11-30 19:26:33 +03:00
Pavel Karpy
0631b38da1
[ #1713 ] ir: Add Neo RPC switch interval to the config
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-10-25 17:38:48 +03:00
Pavel Karpy
f037022a7a
[ #1770 ] logger: Refactor `Logger` component
...
Make it store its internal `zap.Logger`'s level. Also, make all the
components to accept internal `logger.Logger` instead of `zap.Logger`; it
will simplify future refactor.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-10-12 18:11:05 +03:00
Leonard Lyubich
6a2ec21641
[ #1681 ] ir/netmap: Check MAINTENANCE state in `UpdateState`
...
Storage node can be requested to be switched into `MAINTENANCE` state.
Inner Ring should accept such requests only if network configuration
allows it.
Make `Processor` of Netmap contract's notifications to depend on
`state.NetworkSettings`. Make `Processor.processUpdatePeer` to call
`MaintenanceModeAllowed` if notification event relates to `MAINTENANCE`
mode`. Share singe `state.NetworkSettings` provider in Inner Ring
application.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-10-05 11:41:49 +03:00
Leonard Lyubich
f64ae55806
[ #1681 ] ir/netmap: Require MAINTENANCE mode to be allowed by network
...
There is a need to prevent limitless abuse of MAINTENANCE status of the
storage nodes. To do this, configuration of the NeoFS network is going
to be extended with the flag which allows the state. Until this is done,
it makes sense to prepare a site for this in the code.
Define `state.NetworkSettings` interface as an abstraction of global
network configuration within the `state` package. Make
`NetMapCandidateValidator` to depend on `NetworkSettings` and provide
corresponding field setter. Change `VerifyAndUpdate` method's behavior
to return an error for candidates with MAINTENANCE state if this state
is disallowed by the network configuration. Provide `NetworkSettings`
from the wrapper over Netmap contract's client on Inner Ring application
side. The provider is implemented to statically disallow MAINTENANCE
mode in order to save previous behavior.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
Signed-off-by: Leonard Lyubich <ctulhurider@gmail.com>
2022-10-05 11:41:49 +03:00
Leonard Lyubich
8858840751
[ #1796 ] ir/netmap: Allow to call `AddPeer` with ONLINE state only
...
In previous implementation Inner Ring allowed storage nodes with any
state to register in the network. According to the current design, only
nodes with ONLINE state are allowed to enter the network map.
Create new `state` sub-package of `nodevalidation` package of Inner Ring
application. Define `state.NetMapCandidateValidator` type and provide
`NodeValidator` interface required by the Inner Ring's processor of
`Netmap` contract's notification events. Embed new validator into the
one used by the Inner Ring application.
From now all `AddPeer` notifications with node state other than `ONLINE`
will be denied.
Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2022-10-05 11:41:49 +03:00
Evgenii Stratonikov
236414df49
[ #1817 ] network: Allow to use network addresses from the iterator
...
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-10-04 12:12:18 +03:00
Pavel Karpy
a97dee008c
[ #1648 ] morph: Change endpoint priority order
...
The lowest value means the highest priority.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-08-04 16:11:24 +03:00
Evgenii Stratonikov
9a5f9d6f0e
[ #1643 ] innerring: Exit if we cannot bind to the control endpoint
...
Return listen errors in a synchronous fashion.
Another solution would be to use buffered channel, but this is not
scalable: for each new similar runner we would need to extend the
buffer.
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-04 15:41:41 +03:00
Alex Vanin
71fd86f220
[ #1636 ] ir: Listen balance contract in balance processor
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-07-28 18:47:20 +03:00
Pavel Karpy
fb1fac02e9
[ #1619 ] ir: Fix RPC endpoint iteration
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-07-22 12:37:25 +03:00
Evgenii Stratonikov
7410827db8
[ #1609 ] config: Allow to prioritize N3 endpoints
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-21 16:08:42 +03:00
Evgenii Stratonikov
c4b86cf1f1
[ #1592 ] Remove debug builds
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-14 10:39:51 +03:00
Pavel Karpy
27304455bf
[ #1402 ] ir: Filter expired SGs in the audit process
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-07-06 09:56:26 +03:00
Pavel Karpy
4be5dce848
[ #1405 ] ir: Fix settlement log message
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-05-20 12:40:12 +03:00
Pavel Karpy
01e69f2f7a
[ #1170 ] pkg/morph: Add worker pool
...
Add worker pool to the listener to prevent blocking. It is used only for
notary notifications and new block events handling since it uses RPC
calls. That may lead to the deadlock state: neo-go cannot send RPC until
notification channel is read but notification channel cannot be read since
neo-go client cannot send RPC.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-04-08 11:52:18 +03:00
Pavel Karpy
6508136204
[ #1170 ] ir, node: Stop the app on WS connection lost
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-04-08 11:52:18 +03:00
Pavel Karpy
fdf1338d65
[ #1170 ] config: Delete notification endpoints
...
Also, change `http` to `ws` in examples.
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-04-08 11:52:18 +03:00