go-ethereum/rpc
Boqin Qin be6078ad83
all: fix a bunch of inconsequential goroutine leaks (#20667)
The leaks were mostly in unit tests, and could all be resolved by
adding suitably-sized channel buffers or by restructuring the test
to not send on a channel after an error has occurred.

There is an unavoidable goroutine leak in Console.Interactive: when
we receive a signal, the line reader cannot be unblocked and will get
stuck. This leak is now documented and I've tried to make it slightly 
less bad by adding a one-element buffer to the output channels of
the line-reading loop. Should the reader eventually awake from its
blocked state (i.e. when stdin is closed), at least it won't get stuck
trying to send to the interpreter loop which has quit long ago.

Co-authored-by: Felix Lange <fjl@twurst.com>
2020-04-03 20:07:22 +02:00
..
testdata rpc: implement full bi-directional communication (#18471) 2019-02-04 13:47:34 +01:00
client.go rpc: add error when call result parameter is not addressable (#20638) 2020-02-11 09:48:58 +01:00
client_example_test.go rpc: fix example typo (#18100) 2018-11-14 12:21:10 +02:00
client_test.go all: fix a bunch of inconsequential goroutine leaks (#20667) 2020-04-03 20:07:22 +02:00
constants_unix.go accounts, p2p, rpc: make CGO_ENABLED=0 build again (#19593) 2019-05-26 01:07:10 +03:00
constants_unix_nocgo.go accounts, p2p, rpc: make CGO_ENABLED=0 build again (#19593) 2019-05-26 01:07:10 +03:00
doc.go rpc: remove 'exported or builtin' restriction for parameters (#20332) 2019-11-20 10:06:21 +02:00
endpoints.go graphql, node, rpc: fix typos in comments (#20824) 2020-03-27 13:52:53 +01:00
errors.go rpc: implement full bi-directional communication (#18471) 2019-02-04 13:47:34 +01:00
gzip.go rpc: enable compression on HTTP transport (#19997) 2019-08-22 15:18:39 +02:00
handler.go rpc: metrics for JSON-RPC method calls (#20847) 2020-04-03 12:36:44 +02:00
http.go graphql, node, rpc: fix typos in comments (#20824) 2020-03-27 13:52:53 +01:00
http_test.go rpc: enforce the 128KB request limits on websockets too 2018-03-13 13:55:26 +02:00
inproc.go rpc, p2p/simulations: use github.com/gorilla/websocket (#20289) 2019-11-18 10:40:59 +02:00
ipc.go rpc, p2p/simulations: use github.com/gorilla/websocket (#20289) 2019-11-18 10:40:59 +02:00
ipc_js.go all: update author list and licenses 2019-07-22 12:17:27 +03:00
ipc_unix.go rpc: implement websockets with github.com/gorilla/websocket (#19866) 2019-07-22 13:22:39 +03:00
ipc_windows.go all: import "context" instead of "golang.org/x/net/context" 2017-03-22 20:49:15 +01:00
json.go rpc: remove 'exported or builtin' restriction for parameters (#20332) 2019-11-20 10:06:21 +02:00
metrics.go rpc: metrics for JSON-RPC method calls (#20847) 2020-04-03 12:36:44 +02:00
server.go rpc, p2p/simulations: use github.com/gorilla/websocket (#20289) 2019-11-18 10:40:59 +02:00
server_test.go rpc: improve cancel test (#20752) 2020-03-12 11:24:36 +01:00
service.go rpc: remove 'exported or builtin' restriction for parameters (#20332) 2019-11-20 10:06:21 +02:00
stdio.go rpc, p2p/simulations: use github.com/gorilla/websocket (#20289) 2019-11-18 10:40:59 +02:00
subscription.go graphql, node, rpc: fix typos in comments (#20824) 2020-03-27 13:52:53 +01:00
subscription_test.go all: fix a bunch of inconsequential goroutine leaks (#20667) 2020-04-03 20:07:22 +02:00
testservice_test.go rpc: improve cancel test (#20752) 2020-03-12 11:24:36 +01:00
types.go rpc: remove 'exported or builtin' restriction for parameters (#20332) 2019-11-20 10:06:21 +02:00
types_test.go internal/ethapi: support block number or hash on state-related methods (#19491) 2019-09-26 10:47:31 +02:00
websocket.go rpc: add DialWebsocketWithDialer (#20471) 2020-01-06 12:06:29 +01:00
websocket_test.go rpc: add missing timer.Stop calls in websocket tests (#20863) 2020-04-02 22:08:45 +02:00