neobytes/src
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
..
bench Reintroduce BLSInit to correctly set secure alloctor callbacks (#2543) 2018-12-10 06:04:48 +01:00
bls Optimize DKG debug message processing for performance and lower bandwidth (#2672) 2019-02-01 10:49:01 +03:00
compat Move to in-docker CI builds and add Jenkins support (#2178) 2018-07-12 16:28:59 +03:00
config
consensus Merge pull request #2643 from codablock/pr_llmq_chainlocks 2019-01-29 15:59:05 +01:00
crypto Move bls stuff from crypto/ to bls/ 2018-10-12 19:39:26 +02:00
evo ProcessSpecialTxsInBlock should respect fJustCheck (#2653) 2019-01-29 15:57:30 +01:00
immer Update immer to c89819df92191d6969a6a22c88c72943b8e25016 (#2626) 2019-01-14 11:52:19 +03:00
leveldb
llmq Optimize DKG debug message processing for performance and lower bandwidth (#2672) 2019-02-01 10:49:01 +03:00
obj
obj-test
policy Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
primitives Serialize the block header in CBlockHeader::GetHash() (#2531) 2018-12-10 05:40:08 +01:00
qt update copyright (#2648) 2019-01-29 15:53:14 +01:00
rpc Optimize DKG debug message processing for performance and lower bandwidth (#2672) 2019-02-01 10:49:01 +03:00
script Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
secp256k1
support Implement mt_pooled_secure_allocator and use it for BLS secure allocation (#2375) 2018-10-26 07:04:22 +02:00
test Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
univalue
wallet update copyright (#2648) 2019-01-29 15:53:14 +01:00
zmq [ZMQ] Notify when an IS double spend is attempted (#2262) 2018-09-12 14:12:44 +03:00
.clang-format Update .clang-format to more accurately show the actual style (#2299) 2018-09-20 15:40:00 +03:00
activemasternode.cpp Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
activemasternode.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
addrdb.cpp
addrdb.h
addressindex.h
addrman.cpp A few devnet related fixes (#2168) 2018-07-08 00:19:33 +03:00
addrman.h A few devnet related fixes (#2168) 2018-07-08 00:19:33 +03:00
alert.cpp Remove remaining using namespace std 2018-02-21 22:32:13 +03:00
alert.h Drop BOOST_FOREACH and use references in loops (const ref where applicable, Dash code only) (#1899) 2018-02-06 14:09:33 +03:00
amount.cpp
amount.h
arith_uint256.cpp
arith_uint256.h
base58.cpp
base58.h
batchedlogger.cpp Add batched logger 2019-01-09 12:16:11 +01:00
batchedlogger.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
bip39_english.h
bip39.cpp
bip39.h
blockencodings.cpp Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
blockencodings.h Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
bloom.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
bloom.h
cachemap.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
cachemultimap.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
chain.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
chain.h Merge #9908: Define 7200 second timestamp window constant 2019-01-24 22:28:29 -06:00
chainparams.cpp Use smaller LLMQs for ChainLocks on testnet and devnet (#2669) 2019-01-30 21:52:41 +03:00
chainparams.h Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
chainparamsbase.cpp Clear devNetParams and mimic behavior of other param types (#2367) 2018-10-25 09:17:37 +02:00
chainparamsbase.h
chainparamsseeds.h Update testnet seeds to point to MNs that are on the new chain (#2558) 2018-12-14 16:34:11 +01:00
checkpoints.cpp
checkpoints.h
checkqueue.h Merge #9497: CCheckQueue Unit Tests 2018-01-26 12:59:29 +01:00
clientversion.cpp [GUI] Create QR-code for Masternode private key (#1970) 2018-03-08 15:17:34 +03:00
clientversion.h Revert "Set CLIENT_VERSION_IS_RELEASE to true (#2591)" 2019-01-14 20:36:57 +03:00
coins.cpp Few (mostly trivial) cleanups and fixes (#1940) 2018-02-21 19:32:08 +03:00
coins.h Few (mostly trivial) cleanups and fixes (#1940) 2018-02-21 19:32:08 +03:00
compat.h
compressor.cpp
compressor.h
core_io.h
core_memusage.h
core_read.cpp Merge #9650: Better handle invalid parameters to signrawtransaction 2018-02-07 13:11:08 +01:00
core_write.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
ctpl.h Add ctpl header only library 2018-10-04 16:46:48 +02:00
cuckoocache.h
cxxtimer.hpp Add cxxtimer header only libraries 2019-01-09 12:16:11 +01:00
dash-cli-res.rc
dash-cli.cpp
dash-tx-res.rc
dash-tx.cpp Merge #10130: bitcoin-tx input verification (awemany, jnewbery) 2018-01-26 12:59:29 +01:00
dashd-res.rc
dashd.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
dbwrapper.cpp
dbwrapper.h Add ReadDataStream to CDBWrapper to allow manual deserialization 2019-01-18 11:58:58 +01:00
dsnotificationinterface.cpp Merge pull request #2643 from codablock/pr_llmq_chainlocks 2019-01-29 15:59:05 +01:00
dsnotificationinterface.h Remove all legacy/compatibility MN code (#2600) 2019-01-03 12:17:43 +03:00
flat-database.h
governance-classes.cpp Gov cleanup + copyright bump (#2324) 2018-09-28 10:56:17 +03:00
governance-classes.h Gov cleanup + copyright bump (#2324) 2018-09-28 10:56:17 +03:00
governance-exceptions.h Gov cleanup + copyright bump (#2324) 2018-09-28 10:56:17 +03:00
governance-object.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
governance-object.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
governance-validators.cpp Gov cleanup + copyright bump (#2324) 2018-09-28 10:56:17 +03:00
governance-validators.h Gov cleanup + copyright bump (#2324) 2018-09-28 10:56:17 +03:00
governance-vote.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
governance-vote.h Use BLS keys for the DIP3 operator key (#2352) 2018-10-21 22:45:16 +03:00
governance-votedb.cpp Remove proposal/funding votes from MNs that changed the voting key (#2570) 2018-12-20 14:27:48 +01:00
governance-votedb.h Remove proposal/funding votes from MNs that changed the voting key (#2570) 2018-12-20 14:27:48 +01:00
governance.cpp Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
governance.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
hash.cpp Merge #9556: Remove redundant semicolons 2018-01-23 09:24:27 +01:00
hash.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
hdchain.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
hdchain.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
httprpc.cpp Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
httprpc.h
httpserver.cpp Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
httpserver.h
indirectmap.h
init.cpp Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
init.h Refactor and fix restart (#1999) 2018-03-19 16:09:47 +03:00
instantx.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
instantx.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
keepass.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
keepass.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
key.cpp
key.h
keystore.cpp
keystore.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
limitedmap.h
Makefile.am Implement and enforce ChainLocks 2019-01-28 12:24:15 +01:00
Makefile.bench.include Add ECDSA benchmarks 2018-10-10 08:49:10 +02:00
Makefile.leveldb.include
Makefile.qt.include Translations 201811 (#2249) 2018-11-07 10:39:06 +03:00
Makefile.qttest.include Implement wrappers around Chia BLS lib 2018-10-10 08:49:09 +02:00
Makefile.test.include Merge #9821: util: Specific GetOSRandom for Linux/FreeBSD/OpenBSD 2019-01-22 22:57:09 -06:00
masternode-meta.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-meta.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-payments.cpp Fix confusion between dip3 activation and enforcement (#2651) 2019-01-29 15:54:38 +01:00
masternode-payments.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-sync.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-sync.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-utils.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
masternode-utils.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
memusage.h
merkleblock.cpp Merge #10309: Trivial: remove extra character from comment 2018-01-26 12:59:29 +01:00
merkleblock.h Merge #10258: Fixed typo in documentation for merkleblock.h 2018-01-26 12:59:29 +01:00
messagesigner.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
messagesigner.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
miner.cpp Bump block stats when adding commitment tx into block (#2654) 2019-01-29 15:54:57 +01:00
miner.h manual fixes on #9868 2019-01-22 22:57:04 -06:00
net_processing.cpp Implement and enforce ChainLocks 2019-01-28 12:24:15 +01:00
net_processing.h Implement IsBanned to allow checking for banned nodes outside of net_processing.cpp 2019-01-17 18:51:48 +01:00
net.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
net.h Faster re-requesting of recovered sigs 2019-01-21 14:42:08 +01:00
netaddress.cpp
netaddress.h
netbase.cpp Backports 0.15 pr1 (#2590) 2019-01-03 12:18:47 +03:00
netbase.h
netfulfilledman.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
netfulfilledman.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
netmessagemaker.h Optimize DKG debug message processing for performance and lower bandwidth (#2672) 2019-02-01 10:49:01 +03:00
noui.cpp
noui.h
pow.cpp Remove temporary fork handling for emergency difficulty reduction on testnet 2018-12-13 21:51:52 +01:00
pow.h
prevector.h Merge #9856: Terminate immediately when allocation fails 2018-01-26 12:59:29 +01:00
privatesend-client.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
privatesend-client.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
privatesend-server.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
privatesend-server.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
privatesend-util.cpp bump PS copyright (#2417) 2018-11-05 12:29:33 +03:00
privatesend-util.h bump PS copyright (#2417) 2018-11-05 12:29:33 +03:00
privatesend.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
privatesend.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
protocol.cpp Implement and enforce ChainLocks 2019-01-28 12:24:15 +01:00
protocol.h Implement and enforce ChainLocks 2019-01-28 12:24:15 +01:00
pubkey.cpp
pubkey.h
random.cpp Merge #9821: util: Specific GetOSRandom for Linux/FreeBSD/OpenBSD 2019-01-22 22:57:09 -06:00
random.h Merge #9821: util: Specific GetOSRandom for Linux/FreeBSD/OpenBSD 2019-01-22 22:57:09 -06:00
rest.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
reverselock.h
scheduler.cpp
scheduler.h
sendalert.cpp
serialize.h Implement CFixedVarIntsBitSet and CAutoBitSet 2019-01-17 18:51:48 +01:00
spentindex.h
spork.cpp Add missing default value for SPORK_19_CHAINLOCKS_ENABLED (#2670) 2019-01-30 21:53:03 +03:00
spork.h Merge pull request #2643 from codablock/pr_llmq_chainlocks 2019-01-29 15:59:05 +01:00
streams.h
sync.cpp Remove onlyMaybeDeadlock condition around printing of deadlock info 2018-01-23 12:27:28 +01:00
sync.h
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h
timedata.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
timedata.h
tinyformat.h Don't use short version of 'tinyformat/fmt' namespace in util.h (#1975) 2018-03-08 15:18:51 +03:00
torcontrol.cpp
torcontrol.h
txdb.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
txdb.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
txmempool.cpp Backports 0.15 pr2 (#2597) 2019-01-07 12:55:35 +03:00
txmempool.h Merge #9732: [Trivial] Remove nonsense #undef foreach 2019-01-22 22:55:54 -06:00
ui_interface.cpp
ui_interface.h
uint256.cpp Merge #9867: Replace remaining sprintf with snprintf 2019-01-22 22:55:48 -06:00
uint256.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
undo.h
util.cpp update copyright (#2648) 2019-01-29 15:53:14 +01:00
util.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
utilmoneystr.cpp Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
utilmoneystr.h
utilstrencodings.cpp Merge #8775: RPC refactoring: Access wallet using new GetWalletForJSONRPCRequest 2019-01-24 22:28:13 -06:00
utilstrencodings.h Merge #8775: RPC refactoring: Access wallet using new GetWalletForJSONRPCRequest 2019-01-24 22:28:13 -06:00
utiltime.cpp Add real timestamp to log output when mock time is enabled (#2604) 2019-01-03 12:21:19 +03:00
utiltime.h Add real timestamp to log output when mock time is enabled (#2604) 2019-01-03 12:21:19 +03:00
validation.cpp Merge pull request #2643 from codablock/pr_llmq_chainlocks 2019-01-29 15:59:05 +01:00
validation.h Merge pull request #2643 from codablock/pr_llmq_chainlocks 2019-01-29 15:59:05 +01:00
validationinterface.cpp Remove all legacy/compatibility MN code (#2600) 2019-01-03 12:17:43 +03:00
validationinterface.h Backports 0.15 pr1 (#2590) 2019-01-03 12:18:47 +03:00
version.h update copyright (#2648) 2019-01-29 15:53:14 +01:00
versionbits.cpp Show BIP9 progress in getblockchaininfo (#2435) 2018-11-12 18:08:58 +03:00
versionbits.h Show BIP9 progress in getblockchaininfo (#2435) 2018-11-12 18:08:58 +03:00
warnings.cpp Drop BOOST_FOREACH and use references in loops (const ref where applicable, Dash code only) (#1899) 2018-02-06 14:09:33 +03:00
warnings.h