neo-go/pkg/services
Anna Shaleva b7f19a54d5 services: fix chain locked by WS subscriptions handlers
Blockchain's subscriptions, unsubscriptions and notifications are
handled by a single notificationDispatcher routine. Thus, on attempt
to send the subsequent event to Blockchain's subscribers, dispatcher
can't handle subscriptions\unsubscriptions. Make subscription and
unsubscription to be a non-blocking operation for blockchain on the
server side, otherwise it may cause the dispatcher locks.

To achieve this, use a separate lock for those code that make calls
to blockchain's subscription API and for subscription counters on
the server side.
2022-11-18 09:30:12 +03:00
..
helpers/rpcbroadcaster rpc/client: move to pkg/rpcclient 2022-07-21 22:39:53 +03:00
metrics golangci: enable errorlint and fix everything it found 2022-09-02 18:36:23 +03:00
notary *: use uint*Size and SignatureLen constants where appropriate 2022-10-05 10:45:52 +03:00
oracle core, rpc: move getFakeNextBlock to Blockchain 2022-10-07 15:56:34 +03:00
rpcsrv services: fix chain locked by WS subscriptions handlers 2022-11-18 09:30:12 +03:00
stateroot stateroot: fix panic on shutdown 2022-09-13 13:18:13 +03:00