forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Optimize DKG debug message processing for performance and lower bandw…
…idth (#2672) * Allow sub-batch verification in CBLSInsecureBatchVerifier * Implement batch verification of CDKGDebugStatus messages * Use uint8_t for statusBitset in CDKGDebugMemberStatus and CDKGDebugSessionStatus No need to waste one byte per member and per LLMQ type. * Reserve 4k of buffer for CSerializedNetMsg buffer Profiling has shown that a lot of time is spent in resizing the data vector when large messages are involved. * Remove nHeight from CDKGDebugStatus This field changes every block and causes all masternodes to propagate its status for every block, even if nothing DKG related has changed. * Leave out session statuses when we're not a member of that session Otherwise MNs which are not members of DKG sessions will spam the network * Remove receivedFinalCommitment from CDKGDebugSessionStatus This is not bound to a session and thus is prone to spam the network when final commitments are propagated in the finalization phase. * Add "minableCommitments" to "quorum dkgstatus" * Hold cs_main while calling GetMinableCommitment * Abort processing of pending debug messages when spork18 gets disabled * Don't ask for debug messages when we've already seen them "statuses" only contains the current messages but none of the old messages, so nodes kept re-requesting old messages.
- Loading branch information
Showing
11 changed files
with
222 additions
and
89 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.