You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
teor2345
changed the title
Make heartbeats timeout if the connection request queue stays full
Make heartbeats wait for the connection queue to empty, with a timeout
Apr 13, 2021
teor2345
added a commit
to teor2345/zebra
that referenced
this issue
Apr 13, 2021
Is your feature request related to a problem? Please describe.
In #1531, we fixed a bug where a heartbeat would wait forever for the request sink to be ready:
https://github.com/ZcashFoundation/zebra/pull/1531/files#diff-558ef42996967fa2dcffe0d47a6959571254ec41db7d9b0d26d7c3e240feadacR491
Instead, we made heartbeats close the connection if the queue is full. But this results in more connection churn than we need.
Describe the solution you'd like
Wait for the the request sink to be ready, or a timeout to elapse. If the timeout elapses, close the connection.
Describe alternatives you've considered
Do nothing. We churn connections more than needed, particularly under heavy load.
Revert to the old behaviour before #1531. Connections can hang forever.
Additional context
We should prioritise this work based on the performance impact of the extra connection churn.
The text was updated successfully, but these errors were encountered: