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
{{ message }}
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Dropping AgreementHandle waits for a Task to be sent over a channel, which happens when the BftFuture is first polled or on drop. However, this can race against the local thread's event loop being turned.
The simple fix is to alter AgreementHandle to store a oneshot::Sender<()> and BftFuture to store the receiver, and cancel itself upon hearing something on that channel.