neobytes/src
Wladimir J. van der Laan ec366d2595 Merge #10817: Redefine Dust and add a discard_rate
f4d00e6 Add a discard_rate (Alex Morcos)
b138585 Remove factor of 3 from definition of dust. (Alex Morcos)

Pull request description:

  The definition of dust is redefined to remove the factor of 3.

  Dust is redefined to be the value of an output such that it would
  cost that value in fees to (create and) spend the output at the dust
  relay rate.  The previous definition was that it would cost 1/3 of the
  value.  The default dust relay rate is correspondingly increased to
  3000 sat/kB so the actual default dust output value of 546 satoshis
  for a non-segwit output remains unchanged.  This commit is a refactor
  only unless a dustrelayfee is passed on the commandline in which case
  that number now needs to be increased by a factor of 3 to get the same
  behavior.  -dustrelayfee is a hidden command line option.

  Note: It's not exactly a refactor due to edge case changes in rounding
  as evidenced by the required change to the unit test.

  A discard_rate is added which defaults to 10,000 sat/kB

  Any change output which would be dust at the discard_rate you are
  willing to discard completely and add to fee (as well as continuing to
  pay the fee that would have been needed for creating the change)

  This would be a nice addition for 0.15 and I think will remain useful for 0.16 with the new coin selection algorithms in discussion, but its not crucial.

  It does add translation strings, but we could (should?) avoid that by hiding the option

Tree-SHA512: 5b6f655354d0ab6b8b6cac1e8d1fe3136d10beb15c6d948fb15bfb105155a9d03684c6240624039b3eed6428b7e60e54216cc8b2f90c4600701e39f646284a9b
Signed-off-by: Pasta <pasta@dashboost.org>
2019-09-08 00:11:05 -05:00
..
bench Merge #10662: Initialize randomness in benchmarks 2019-09-03 22:21:17 -05:00
bls Fix excessive memory use when flushing chainstate and EvoDB (#3008) 2019-07-02 07:16:27 +03:00
compat Merge #9544: [trivial] Add end of namespace comments. Improve consistency. 2019-07-11 10:34:46 -05:00
config
consensus #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
crypto #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
evo #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
governance Rework govobject/trigger cleanup a bit (#3070) 2019-08-23 21:03:05 +03:00
immer Update immer library to current master (0a718d2d76bab6ebdcf43de943bd6c7d2dbfe2f9) (#2821) 2019-04-01 14:10:49 +03:00
leveldb Merge #10958: Update to latest Bitcoin patches for LevelDB 2019-08-12 09:07:03 -05:00
llmq Refactor few things here and there (#3066) 2019-08-28 14:51:59 +03:00
masternode Optimize on-disk deterministic masternode storage to reduce size of evodb (#3017) 2019-07-09 08:59:57 +03:00
obj
obj-test
policy Merge #10817: Redefine Dust and add a discard_rate 2019-09-08 00:11:05 -05:00
primitives Merge #10892: Replace traditional for with ranged for in block and transaction primitives 2019-08-01 14:36:08 -05:00
privatesend fix all of the problems 2019-09-03 18:55:21 -05:00
qt Fix includes 2019-09-07 22:36:46 -05:00
rpc fix all of the problems 2019-09-03 18:55:21 -05:00
script backport part of #10481 2019-08-12 09:07:03 -05:00
secp256k1 Merge #10633: doc: Fix various typos 2019-07-11 10:34:46 -05:00
support #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
test Merge #10817: Redefine Dust and add a discard_rate 2019-09-08 00:11:05 -05:00
univalue
wallet Merge #10817: Redefine Dust and add a discard_rate 2019-09-08 00:11:05 -05:00
zmq #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
.clang-format \#10193 clang-format: Delete ForEachMacros 2019-07-24 11:59:09 -05:00
addrdb.cpp Merge #10248: Rewrite addrdb with less duplication using CHashVerifier 2019-07-11 10:34:46 -05:00
addrdb.h Merge #10248: Rewrite addrdb with less duplication using CHashVerifier 2019-07-11 10:34:46 -05:00
addressindex.h
addrman.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
addrman.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
amount.h Merge #9279: Consensus: Move CFeeRate out of libconsensus 2019-06-26 15:26:07 -05:00
arith_uint256.cpp Merge #10530: Fix invalid instantiation and possibly unsafe accesses of array in class base_uint<BITS> 2019-07-11 10:34:46 -05:00
arith_uint256.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
base58.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
base58.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
batchedlogger.cpp Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
batchedlogger.h Backport Bitcoin#9424, Bitcoin#10123 and Bitcoin#10153 (#2918) 2019-05-23 00:51:39 +03:00
bip39_english.h
bip39.cpp
bip39.h
blockencodings.cpp Merge #10553: Simplify "bool x = y ? true : false". Remove unused function and trailing semicolon. 2019-07-09 13:08:20 -05:00
blockencodings.h
bloom.cpp #10193 scripted-diff: Remove #include <boost/foreach.hpp> 2019-07-24 11:59:09 -05:00
bloom.h Merge #9750: Bloomfilter: parameter variables made constant 2019-06-24 11:39:34 -05:00
cachemap.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
cachemultimap.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
chain.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
chain.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
chainparams.cpp Few fixes in docs/comments (#3068) 2019-08-28 10:54:19 +03:00
chainparams.h Merge #10446: net: avoid extra dns query per seed 2019-07-11 10:34:46 -05:00
chainparamsbase.cpp Change regtest and devnet p2p/rpc ports (#3064) 2019-08-28 10:52:00 +03:00
chainparamsbase.h Merge #8855: Use a proper factory for creating chainparams 2019-06-26 12:45:10 -05:00
chainparamsseeds.h
checkpoints.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
checkpoints.h
checkqueue.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
clientversion.cpp
clientversion.h Merge #10168: Fix build warning from #error text 2019-06-14 01:25:59 -05:00
coins.cpp Merge #10148: Use non-atomic flushing with block replay 2019-08-01 14:57:28 -05:00
coins.h Merge #10148: Use non-atomic flushing with block replay 2019-08-01 14:57:28 -05:00
compat.h Merge #10865: Move CloseSocket out of SetSocketNonBlocking and pass socket as const reference 2019-08-12 09:07:03 -05:00
compressor.cpp Merge #9804: Fixes subscript 0 (&var[0]) where should use (var.data()) instead. 2019-07-17 19:01:41 -05:00
compressor.h
core_io.h Merge #10999: Fix amounts formatting in decoderawtransaction 2019-08-12 09:07:03 -05:00
core_memusage.h Merge #10760: Avoid dereference-of-casted-pointer 2019-07-24 11:59:09 -05:00
core_read.cpp Merge #10792: Replace MAX_OPCODE for OP_NOP10. 2019-08-12 09:07:03 -05:00
core_write.cpp Add missing tx type to TxToUniv (#3069) 2019-08-28 10:54:44 +03:00
ctpl.h
cuckoocache.h Merge #10577: Add an explanation of quickly hashing onto a non-power of two range. 2019-07-11 10:34:46 -05:00
cxxtimer.hpp
dash-cli-res.rc
dash-cli.cpp Dashify 2019-08-13 11:27:56 -05:00
dash-tx-res.rc
dash-tx.cpp Merge #10536: Remove unreachable or otherwise redundant code 2019-07-11 10:34:46 -05:00
dashd-res.rc
dashd.cpp Merge #10832: init: Factor out AppInitLockDataDirectory and fix startup core dump issue 2019-08-01 09:02:48 -05:00
dbwrapper.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
dbwrapper.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
dsnotificationinterface.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
dsnotificationinterface.h Drop CDSNotificationInterface::SyncTransaction() 2019-05-28 11:59:55 +02:00
flat-database.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
fs.cpp Merge #10546: Remove 33 unused Boost includes 2019-07-08 13:50:05 -05:00
fs.h Merge #10432: [Trivial] Add BITCOIN_FS_H endif footer in fs.h 2019-06-24 11:39:34 -05:00
hash.cpp Merge #9804: Fixes subscript 0 (&var[0]) where should use (var.data()) instead. 2019-07-17 19:01:41 -05:00
hash.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
hdchain.cpp Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
hdchain.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
httprpc.cpp Merge #10849: Multiwallet: simplest endpoint support 2019-08-01 09:05:19 -05:00
httprpc.h Merge #10568: Remove unnecessary forward class declarations in header files 2019-07-09 13:08:20 -05:00
httpserver.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
httpserver.h Merge #10849: Multiwallet: simplest endpoint support 2019-08-01 09:05:19 -05:00
indirectmap.h
init.cpp Merge #10817: Redefine Dust and add a discard_rate 2019-09-08 00:11:05 -05:00
init.h Merge #10832: init: Factor out AppInitLockDataDirectory and fix startup core dump issue 2019-08-01 09:02:48 -05:00
keepass.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
keepass.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
key.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
key.h Merge #10075: Remove unused C++ code not covered by unit tests 2019-06-14 14:47:39 -05:00
keystore.cpp Merge #10546: Remove 33 unused Boost includes 2019-07-08 13:50:05 -05:00
keystore.h Merge #10546: Remove 33 unused Boost includes 2019-07-08 13:50:05 -05:00
limitedmap.h Collection of minor performance optimizations (#2855) 2019-04-11 15:42:14 +03:00
Makefile.am Merge #9172: Resurrect pstratem's "Simple fuzzing framework" 2019-08-24 10:22:40 -05:00
Makefile.bench.include Merge #15649: Add ChaCha20Poly1305@Bitcoin AEAD 2019-07-23 09:14:30 -05:00
Makefile.leveldb.include Merge #10806: build: verify that the assembler can handle crc32 functions 2019-07-17 19:01:41 -05:00
Makefile.qt.include Backport #12783: macOS: disable AppNap during sync (and mixing) (#3024) 2019-07-15 14:38:55 +03:00
Makefile.qttest.include Merge #10295: [qt] Move some WalletModel functions into CWallet 2019-07-11 10:34:46 -05:00
Makefile.test.include Add LDFLAGS_WRAP_EXCEPTIONS to dash_fuzzy linking (#3075) 2019-09-03 22:48:24 +03:00
memusage.h #10193 scripted-diff: Remove #include <boost/foreach.hpp> 2019-07-24 11:59:09 -05:00
merkleblock.cpp Merge #9980: Fix mem access violation merkleblock 2019-07-24 11:59:09 -05:00
merkleblock.h Merge #9980: Fix mem access violation merkleblock 2019-07-24 11:59:09 -05:00
messagesigner.cpp Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
messagesigner.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
miner.cpp Merge bitcoin#8329: Consensus: MOVEONLY: Move functions for tx verification (#3030) 2019-07-23 12:20:23 +03:00
miner.h Merge #10568: Remove unnecessary forward class declarations in header files 2019-07-09 13:08:20 -05:00
net_processing.cpp Reduce non-debug PS log output (#3076) 2019-09-03 22:48:35 +03:00
net_processing.h Merge #9725: CValidationInterface Cleanups 2019-05-27 09:03:19 -05:00
net.cpp Merge #10501: remove some unused functions -- ignoring removal of SetPort due to dash#2168 2019-09-08 00:10:48 -05:00
net.h Merge #10501: remove some unused functions -- ignoring removal of SetPort due to dash#2168 2019-09-08 00:10:48 -05:00
netaddress.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
netaddress.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
netbase.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
netbase.h Merge #10865: Move CloseSocket out of SetSocketNonBlocking and pass socket as const reference 2019-08-12 09:07:03 -05:00
netfulfilledman.cpp Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
netfulfilledman.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03: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 #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
pow.h
prevector.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
protocol.cpp Merge #9544: [trivial] Add end of namespace comments. Improve consistency. 2019-07-11 10:34:46 -05:00
protocol.h Merge #10842: Fix incorrect Doxygen tag (@ince → @since). Doxygen parameter name matching. 2019-07-24 11:59:09 -05:00
pubkey.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
pubkey.h
random.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
random.h Merge #15512: Add ChaCha20 encryption option (XOR) 2019-07-23 09:14:28 -05:00
rest.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
reverse_iterator.h \#10193 Introduce src/reverse_iterator.hpp and include it... 2019-07-24 11:59:09 -05:00
reverselock.h
saltedhasher.cpp Implement std::unordered_map/set compatible hasher classes for salted hashes 2019-02-27 14:40:52 +01:00
saltedhasher.h Implement std::unordered_map/set compatible hasher classes for salted hashes 2019-02-27 14:40:52 +01:00
scheduler.cpp Merge #10914: Add missing lock in CScheduler::AreThreadsServicingQueue() 2019-09-08 00:10:37 -05:00
scheduler.h Merge #10179: Give CValidationInterface Support for calling notifications on the CScheduler Thread 2019-09-07 12:33:13 -05:00
serialize.h Merge #9804: Fixes subscript 0 (&var[0]) where should use (var.data()) instead. 2019-07-17 19:01:41 -05:00
spentindex.h Optimize on-disk deterministic masternode storage to reduce size of evodb (#3017) 2019-07-09 08:59:57 +03:00
spork.cpp Refactor few things here and there (#3066) 2019-08-28 14:51:59 +03:00
spork.h Remove legacy InstantSend code (#3020) 2019-07-09 17:50:08 +03:00
stacktraces.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
stacktraces.h Enable stacktrace support in gitian builds (#3006) 2019-07-02 07:16:11 +03:00
streams.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
sync.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
sync.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h
timedata.cpp #10193 scripted-diff: Remove #include <boost/foreach.hpp> 2019-07-24 11:59:09 -05:00
timedata.h Merge #8808: Do not shadow variables (gcc set) 2019-02-01 00:41:12 -06:00
tinyformat.h Merge bitcoin#9963: util: Properly handle errors during log message formatting (#2917) 2019-05-21 15:32:33 +02:00
torcontrol.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
torcontrol.h
txdb.cpp add gArgs 2019-08-02 12:41:37 -05:00
txdb.h Merge #10148: Use non-atomic flushing with block replay 2019-08-01 14:57:28 -05:00
txmempool.cpp Merge #10199: Better fee estimates 2019-07-24 11:59:09 -05:00
txmempool.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
ui_interface.cpp
ui_interface.h Merge #10568: Remove unnecessary forward class declarations in header files 2019-07-09 13:08:20 -05:00
uint256.cpp
uint256.h Update copyright date (2019) (#2970) 2019-06-11 14:46:07 +03:00
undo.h
unordered_lru_cache.h Replace BITCOIN_UNORDERED_LRU_CACHE_H with DASH_UNORDERED_LRU_CACHE_H 2019-03-11 15:18:25 +01:00
util.cpp Remove p2p alert leftovers (#3050) 2019-08-16 14:49:15 +03:00
util.h Remove p2p alert leftovers (#3050) 2019-08-16 14:49:15 +03:00
utilmoneystr.cpp
utilmoneystr.h Merge #10999: Fix amounts formatting in decoderawtransaction 2019-08-12 09:07:03 -05:00
utilstrencodings.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
utilstrencodings.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
utiltime.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
utiltime.h Revert " Add real timestamp to log output when mock time is enabled (#2604)" 2019-06-24 11:39:34 -05:00
validation.cpp Still pass the disconect block index 2019-09-07 22:37:16 -05:00
validation.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
validationinterface.cpp Still pass the disconect block index 2019-09-07 22:37:16 -05:00
validationinterface.h Still pass the disconect block index 2019-09-07 22:37:16 -05:00
version.h Merge #10560: Remove unused constants 2019-07-08 13:50:05 -05:00
versionbits.cpp #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
versionbits.h #10483 scripted-diff: Use the C++11 keyword nullptr to denote the pointer literal instead of the macro NULL 2019-08-12 09:07:03 -05:00
warnings.cpp Merge #10501: remove some unused functions -- ignoring removal of SetPort due to dash#2168 2019-09-08 00:10:48 -05:00
warnings.h Merge #10501: remove some unused functions -- ignoring removal of SetPort due to dash#2168 2019-09-08 00:10:48 -05:00