neo-go/pkg/network
Roman Khimov 432cef59f4 network: copy peers for Shutdown iteration
We can't lock them (or there will be a deadlock), but we need to fix this:

fatal error: concurrent map iteration and map write

goroutine 1 [running]:
runtime.throw(0xdec086, 0x26)
        /usr/lib64/go/1.12/src/runtime/panic.go:617 +0x72 fp=0xc02fec2bf8 sp=0xc02fec2bc8 pc=0x42d932
runtime.mapiternext(0xc02fec2d40)
        /usr/lib64/go/1.12/src/runtime/map.go:860 +0x597 fp=0xc02fec2c80 sp=0xc02fec2bf8 pc=0x40efe7
github.com/nspcc-dev/neo-go/pkg/network.(*Server).Shutdown(0xc0000fc160)
        /home/rik/dev/neo-go2/pkg/network/server.go:194 +0x238 fp=0xc02fec2db0 sp=0xc02fec2c80 pc=0xa89da8
github.com/nspcc-dev/neo-go/cli/server.startServer(0xc0000fcc60, 0x0, 0x0)
        /home/rik/dev/neo-go2/cli/server/server.go:399 +0x7a9 fp=0xc02fec3820 sp=0xc02fec2db0 pc=0xae2079
...
2020-07-17 19:03:12 +03:00
..
capability capability: prevent panic on wrong capabilities receival 2020-05-29 00:11:54 +03:00
metrics cli,pkg: use zap.Logger 2020-01-10 11:14:27 +03:00
payload network: update CMDUncknown 2020-07-16 06:58:55 +03:00
blockqueue.go core: move Blockchainer interface to a separate package 2020-04-11 10:56:36 +03:00
blockqueue_test.go *: move all packages from CityOfZion to nspcc-dev 2020-03-03 17:21:42 +03:00
compress.go core: add native policy contract 2020-06-24 07:35:07 +03:00
discovery.go protocol: add capabilities to address payload 2020-05-27 19:02:25 +03:00
discovery_test.go protocol: add capabilities to address payload 2020-05-27 19:02:25 +03:00
helper_test.go consensus: use GetNextBlockValidators where appropriate 2020-07-11 19:54:50 +03:00
message.go network: update CMDUncknown 2020-07-16 06:58:55 +03:00
message_string.go network: update CMDUncknown 2020-07-16 06:58:55 +03:00
message_test.go network: remove outdated fields 2020-05-27 19:32:50 +03:00
peer.go protocol: add capabilities to version payload 2020-05-27 19:01:14 +03:00
prometheus.go monitoring: add prometheus monitoring 2019-10-29 20:51:17 +03:00
relay_reason.go fix spelling and godoc comments 2019-10-22 17:56:03 +03:00
server.go network: copy peers for Shutdown iteration 2020-07-17 19:03:12 +03:00
server_config.go *: move wallet config from wallet to config package 2020-06-29 09:15:29 +03:00
server_test.go protocol: add capabilities to version payload 2020-05-27 19:01:14 +03:00
tcp_peer.go block/transaction: add network magic into the hash 2020-06-18 12:39:50 +03:00
tcp_peer_test.go protocol: add capabilities to version payload 2020-05-27 19:01:14 +03:00
tcp_transport.go protocol: add capabilities to version payload 2020-05-27 19:01:14 +03:00
transport.go protocol: add capabilities to version payload 2020-05-27 19:01:14 +03:00