Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fix: graceful shutdown bug
Description
delete(ps.diffWait, id)
while the handshake fails onhandler_diff.go
Rationale
The preceding error occurs multiple times when node
stop()
. Wait channel inwaitDiffExtension
can't exit normally.In
runEthPeer
ofeth/handler.go
, if the peer has adiff
extension, wait for it to connect throughpeerset.diffWait
channel.While
RunPeer
ofeth/handler_diff.go
runs, if thepeer.Handshake
is successful,peerset.diffWait[id]
will exit and be removed. If it it not successful,peerset.diffWait[id]
onwaitDiffExtension
will keep waiting. Which causedgraceful shutdown
cannot be enabledExample
add an example CLI or API response...
Changes
Notable changes:
Preflight checks
make build
)make test
)Already reviewed by
...
Related issues
#479