neo-go/cli
Leonard Lyubich 6e990f39de cli/node: Fix deadlock produced by instant RPC service start
If `StartWhenSynchronized` is unset in config, `node` command runs RPC
service instantly. Previously there was a ground for deadlock. Command
started RPC server synchronously. According to server implementation, it
sends all internal failures to the parameterized error channel. Deadlock
occured because main routine didn't scan the channel.

Run `rpcsrv.Server.Start` in a separate go-routine in `startServer`.
This prevents potential deadlock caused by writing into unread channel.

Fixes #2896.

Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
2023-08-01 17:27:28 +03:00
..
app cli: move tests to subpackages 2022-10-06 09:21:26 +03:00
cmdargs *: drop legacy addresses from examples 2023-06-29 11:56:26 +03:00
flags [#2442] English Check 2022-05-04 19:48:27 +03:00
input *: bump minimum supported go version 2022-08-08 13:59:32 +03:00
nep_test services: allow multiple listen addresses for simple services 2022-12-07 11:23:01 +03:00
options services: allow multiple listen addresses for simple services 2022-12-07 11:23:01 +03:00
paramcontext context: define a constant for transaction context type 2022-09-08 14:33:04 +03:00
query services: allow multiple listen addresses for simple services 2022-12-07 11:23:01 +03:00
server cli/node: Fix deadlock produced by instant RPC service start 2023-08-01 17:27:28 +03:00
smartcontract rpcbinding: fix wrappers for Any type, fix #2898 2023-02-18 00:06:45 +03:00
testdata vm: add PUSHT and PUSHF opcodes 2022-12-02 10:02:33 +03:00
txctx cli: deduplicate smartcontract/wallet tx confirm/sign/save/send 2022-10-06 23:03:32 +03:00
util vm: move vm CLI to cli/vm package 2022-10-07 15:56:34 +03:00
vm *: add nolint comments to multiple errors wrapping 2023-03-15 16:38:01 +03:00
wallet cli: allow to request NEP2 password from input 2023-01-25 14:20:59 +03:00
.gitignore Better error messages (#24) 2018-02-24 10:10:45 +01:00
main.go cli: move tests to subpackages 2022-10-06 09:21:26 +03:00