neobytes/qa/rpc-tests/test_framework
Alexander Block 18950f923e Optimize DKG debug message processing for performance and lower bandwidth (#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.
2019-02-01 10:49:01 +03:00
..
__init__.py [QA] restructure rpc tests directory 2015-05-18 15:25:45 +02:00
authproxy.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
bignum.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
blockstore.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
blocktools.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
comptool.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
coverage.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
key.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
mininode.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
netutil.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
script.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
siphash.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
socks5.py Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
test_framework.py Optimize DKG debug message processing for performance and lower bandwidth (#2672) 2019-02-01 10:49:01 +03:00
util.py Speed up integration tests with masternodes (#2642) 2019-01-23 19:36:51 +03:00