frostfs-node/pkg
Pavel Karpy 763dee4d60
All checks were successful
ci/woodpecker/push/pre-commit Pipeline was successful
ci/woodpecker/pr/pre-commit Pipeline was successful
[#2272] morph: Do not subscribe to events without listening
It led to a neo-go dead-lock in the `subscriber` component. Subscribing to
notifications is the same RPC as any others, so it could also be blocked
forever if no async listening (reading the notification channel) routine
exists. If a number of subscriptions is big enough (or a caller is lucky
enough) subscribing loop might have not finished subscribing before the
first notification is received and then: subscribing RPC is blocked by
received notification (non)handling and listening notifications routine is
blocked by not finished subscription loop.
That commit starts listening notification channel _before_ any subscription
actions.

Signed-off-by: Pavel Karpy <p.karpy@yadro.com>
2023-03-31 22:31:22 +03:00
..
core [#159] Add handle __SYSTEM__ sys attributes 2023-03-22 17:35:20 +03:00
innerring [#185] ir: Resolve containedctx linter 2023-03-30 19:10:33 +00:00
local_object_storage [#168] node: Refactor node config 2023-03-31 09:32:59 +03:00
metrics [#148] linter: Add funlen linter 2023-03-21 09:54:41 +03:00
morph [#2272] morph: Do not subscribe to events without listening 2023-03-31 22:31:22 +03:00
network Rename package name 2023-03-07 16:38:26 +03:00
services [#168] node: Refactor container services 2023-03-31 09:32:59 +03:00
util [#180] node: Refactor panics in unit test 2023-03-29 12:39:07 +03:00