stacks-core
stacks-core copied to clipboard
Signers send extra, unnecessary approvals
In Signer::handle_block_pre_commit, we check if block_info.has_reached_consensus() and exit early, which will happen when the block is already globally accepted, but there is no early exit for the case where the pre-commits have already reached consensus and this node has already sent its acceptance block response. That means for every pre-commit that it receives over 70%, it will send another block response. This adds extra network traffic and makes the logs less clear.
I think we should be checking signed_self to see if we have already signed this proposal and if so, exit early.