V0.14.0 Coin priority (RPC and Guide) and Debug (#114)

* RPC - Update debug category list
 Related to dashpay/dash#2810

* RPC - Coin age priority updates
 - Remove estimate*priority
 - Remove priority param from prioritisetransactions
 - Adjust relay-fee param descriptions

* Formatting - Minor fixes

* Content - Sync guide and glossary with priority changes
This commit is contained in:
thephez 2019-03-28 08:53:55 -04:00
parent e057568ccf
commit 865990cd4b
15 changed files with 52 additions and 72 deletions

View file

@ -9,8 +9,10 @@ required:
summary_max_255_characters_no_formatting: >
Transactions that don't have to pay a transaction fee because
their inputs have been idle long enough to accumulated large
amounts of priority. Note: miners choose whether to accept free
transactions.
amounts of priority.
Note: As of Dash Core 0.12.3, all
transactions require a fee. Also, coin age priority logic was
removed in Dash Core 0.14.0.
synonyms_shown_in_glossary_capitalize_first_letter:
- High-priority transaction
@ -24,7 +26,6 @@ optional:
not_to_be_confused_with_capitalize_first_letter:
links_html_or_markdown_style_capitalize_first_letter:
- "[High-priority transactions](/en/developer-guide#term-high-priority-transactions) --- Developer Guide"
- "[Free transaction relay policy](https://en.bitcoin.it/wiki/Free_transaction_relay_policy) --- Bitcoin Wiki"
#- "[High-priority transactions](/en/developer-guide#term-high-priority-transactions) --- Developer Guide"
---

View file

@ -7,10 +7,9 @@ required:
title_max_40_characters_no_formatting: Minimum Relay Fee
summary_max_255_characters_no_formatting: >
The minimum transaction fee a transaction must pay (if it isn't
a high-priority transaction) for a full node to relay that
transaction to other nodes. There is no one minimum relay
fee---each node chooses its own policy.
The minimum transaction fee a transaction must pay for a full
node to relay that transaction to other nodes. There is no
one minimum relay fee---each node chooses its own policy.
synonyms_shown_in_glossary_capitalize_first_letter:
- Minimum relay fee
@ -27,6 +26,6 @@ optional:
links_html_or_markdown_style_capitalize_first_letter:
- "[Minimum relay fee](/en/developer-guide#term-minimum-fee) --- Developer Guide"
- "[Transaction fees](https://en.bitcoin.it/wiki/Transaction_fees) --- Bitcoin Wiki"
#- "[Transaction fees](https://en.bitcoin.it/wiki/Transaction_fees) --- Bitcoin Wiki"
---

View file

@ -145,8 +145,8 @@ These RPCs are all Dash-specific and not found in Bitcoin Core
{% autocrossref %}
* [Debug][rpc debug]: {{summary_debug}} {{DASH_UPDATED0_12_3}}
* [GetInfo][rpc getinfo]: {{summary_getInfo}} {{DEPRECATED}}
* [Debug][rpc debug]: {{summary_debug}} {{DASH_UPDATED0_14_0}}
* [GetInfo][rpc getinfo]: {{summary_getInfo}} {{DASH_UPDATED0_14_0}} {{DEPRECATED}}
* [GetMemoryInfo][rpc getmemoryinfo]: {{summary_getMemoryInfo}} {{DASH_NEW0_12_3}} {{NEW_14_0}}
* [Help][rpc help]: {{summary_help}}
* [Stop][rpc stop]: {{summary_stop}}
@ -203,7 +203,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core
* [GetBlockTemplate][rpc getblocktemplate]: {{summary_getBlockTemplate}} {{DASH_UPDATED0_13_0}}
* [GetMiningInfo][rpc getmininginfo]: {{summary_getMiningInfo}} {{UPDATED0_14_0}}
* [GetNetworkHashPS][rpc getnetworkhashps]: {{summary_getNetworkHashPS}}
* [PrioritiseTransaction][rpc prioritisetransaction]: {{summary_prioritiseTransaction}}
* [PrioritiseTransaction][rpc prioritisetransaction]: {{summary_prioritiseTransaction}} {{UPDATED0_14_0}}
* [SubmitBlock][rpc submitblock]: {{summary_submitBlock}}
{% endautocrossref %}
@ -220,7 +220,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core
* [GetAddedNodeInfo][rpc getaddednodeinfo]: {{summary_getAddedNodeInfo}} {{DASH_UPDATED0_12_3}} {{UPDATED0_14_0}}
* [GetConnectionCount][rpc getconnectioncount]: {{summary_getConnectionCount}}
* [GetNetTotals][rpc getnettotals]: {{summary_getNetTotals}} {{UPDATED0_12_0}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}} {{DASH_UPDATED0_12_3}} {{UPDATED0_13_0}}
* [GetNetworkInfo][rpc getnetworkinfo]: {{summary_getNetworkInfo}} {{DASH_UPDATED0_14_0}}
* [GetPeerInfo][rpc getpeerinfo]: {{summary_getPeerInfo}} {{UPDATED0_13_0}}
* [ListBanned][rpc listbanned]: {{summary_listBanned}} {{NEW0_12_0}}
* [Ping][rpc ping]: {{summary_ping-rpc}}
@ -253,9 +253,7 @@ These RPCs are all Dash-specific and not found in Bitcoin Core
* [CreateMultiSig][rpc createmultisig]: {{summary_createMultiSig}}
* [EstimateFee][rpc estimatefee]: {{summary_estimateFee}}
* [EstimatePriority][rpc estimatepriority]: {{summary_estimatePriority}} {{DEPRECATED}}
* [EstimateSmartFee][rpc estimatesmartfee]: {{summary_estimateSmartFee}} {{DEPRECATED}}
* [EstimateSmartPriority][rpc estimatesmartpriority]: {{summary_estimateSmartPriority}} {{DEPRECATED}}
* [SetBIP69Enabled][rpc setbip69enabled]: {{summary_setBIP69Enabled}} {{DASH_NEW0_12_3}}
* [SignMessageWithPrivKey][rpc signmessagewithprivkey]: {{summary_signMessageWithPrivKey}} {{DASH_NEW0_12_3}} {{NEW0_13_0}}
* [ValidateAddress][rpc validateaddress]: {{summary_validateAddress}} {{DASH_UPDATED0_12_3}} {{UPDATED0_13_0}}
@ -336,6 +334,8 @@ default.
{% autocrossref %}
* [EstimatePriority][rpc estimatepriority]: {{summary_estimatePriority}}
* [EstimateSmartPriority][rpc estimatesmartpriority]: {{summary_estimateSmartPriority}}
* [GetHashesPerSec][rpc gethashespersec]: {{summary_getHashesPerSec}}
* [GetWork][rpc getwork]: {{summary_getWork}}
* [GetGenerate][rpc getgenerate]: {{summary_getGenerate}}

View file

@ -9,13 +9,13 @@ http://opensource.org/licenses/MIT.
##### BLS
{% include helpers/subhead-links.md %}
{% assign summary_bLS="provides a set of commands to execute BLS-related actions." %}
{% assign summary_bls="provides a set of commands to execute BLS-related actions." %}
{% autocrossref %}
*Added in Dash Core 0.13.0*
The `bls` RPC {{summary_bLS}}
The `bls` RPC {{summary_bls}}
{% endautocrossref %}

View file

@ -3,6 +3,7 @@ This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_includes/devdoc/dash-core/rpcs/rpcs/debug.md" %}
<!-- __ -->
##### Debug
{% include helpers/subhead-links.md %}
@ -19,8 +20,7 @@ The `debug` RPC {{summary_debug}}
- n: "Debug category"
t: "string"
p: "Required<br>(1 or more)"
d: "The debug category to activate. Use a `+` to specify multiple categories. Categories will be one of the following:<br>`0` - Disables all categories <br>`1` - Enables all categories <br>`addrman` <br>`alert` <br>`bench` <br>`coindb` <br>`db` <br>`lock` <br>`rand` <br>`rpc` <br>`selectcoins` <br>`mempool` <br>`mempoolrej` <br>`net` <br>`proxy` <br>`prune` <br>`http` <br>`libevent` <br>`tor` <br>`zmq` <br>`dash` <br>`privatesend` <br>`instantsend` <br>`masternode` <br>`spork` <br>`keepass` <br>`mnpayments` <br>`gobject` <br>"
d: "The debug category to activate. Use a `+` to specify multiple categories. Categories will be one of the following:<br>`0` - Disables all categories <br>`1` - Enables all categories <br>`addrman` <br>`alert` <br>`bench` <br>`cmpctblock` <br>`coindb` <br>`db` <br>`http` <br>`leveldb` <br>`libevent` <br>`lock` <br>`mempool` <br>`mempoolrej` <br>`net` <br>`proxy` <br>`prune` <br>`qt` <br>`rand` <br>`reindex` <br>`rpc` <br>`selectcoins` <br>`tor` <br>`zmq` <br>`dash` (all subcategories)<br><br>The `dash` sub-categories can be enabled individually:<br>`chainlocks` <br>`gobject` <br>`instantsend` <br>`keepass` <br>`llmq` <br>`llmq-dkg` <br>`llmq-sigs` <br>`masternode` <br>`mnpayments` <br>`mnsync` <br>`privatesend` <br>`spork` <br><br><br>Note: No error will be thrown even if the specified category doesn't match any of the above"
{% enditemplate %}
*Example from Dash Core 0.12.3*

View file

@ -11,16 +11,12 @@ http://opensource.org/licenses/MIT.
{% autocrossref %}
{% assign summary_estimatePriority="estimates the priority that a transaction needs in order to be included within a certain number of blocks as a free high-priority transaction." %}
{% assign summary_estimatePriority="was removed in Dash Core 0.14.0." %}
*Added in Bitcoin Core 0.10.0.*
{{WARNING}} **_Removed in Dash Core 0.14.0._**
The `estimatepriority` RPC {{summary_estimatePriority}} This should not to be confused with the `prioritisetransaction` RPC which will remain supported for adding fee deltas to transactions.
{{WARNING}} `estimatepriority` has been [removed from Bitcoin](https://github.com/bitcoin/bitcoin/commit/fe282acd7604b5265762b24e531bdf1ebb1f009b). While still present in Dash Core, it is deprecated as of 0.12.3 (should be considered unstable and will disappear in the future). Use the RPC listed in the "See Also" subsection below instead.
Transaction priority is relative to a transaction's byte size.
*Parameter #1---how many blocks the transaction may wait before being included as a free high-priority transaction*
{% itemplate ntpd1 %}

View file

@ -11,14 +11,12 @@ http://opensource.org/licenses/MIT.
{% autocrossref %}
{% assign summary_estimateSmartPriority="estimates the priority that a transaction needs in order to be included within a certain number of blocks as a free high-priority transaction and returns the number of blocks for which the estimate is valid." %}
{% assign summary_estimateSmartPriority="was removed in Dash Core 0.14.0." %}
{{WARNING}} **_Removed in Dash Core 0.14.0._**
The `estimatesmartpriority` RPC {{summary_estimateSmartPriority}} This should not to be confused with the `prioritisetransaction` RPC which will remain supported for adding fee deltas to transactions.
{{WARNING}} `estimatesmartpriority` has been [removed from Bitcoin](https://github.com/bitcoin/bitcoin/commit/fe282acd7604b5265762b24e531bdf1ebb1f009b). While still present in Dash Core, it is deprecated as of 0.12.3 (should be considered unstable and will disappear in the future). Use the RPC listed in the "See Also" subsection below instead.
Transaction priority is relative to a transaction's byte size.
*Parameter #1---how many blocks the transaction may wait before being included as a free high-priority transaction*
{% itemplate ntpd1 %}

View file

@ -3,6 +3,7 @@ This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_includes/devdoc/dash-core/rpcs/rpcs/getinfo.md" %}
<!--__ -->
##### GetInfo
{% include helpers/subhead-links.md %}
@ -104,7 +105,7 @@ Core. Use the RPCs listed in the See Also subsection below instead.
- n: "→<br>`relayfee`"
t: "number (duffs)"
p: "Required<br>(exactly 1)"
d: "The minimum fee a low-priority transaction must pay in order for this node to accept it into its memory pool"
d: "The minimum fee per kilobyte a transaction must pay in order for this node to accept it into its memory pool"
- n: "→<br>`errors`"
t: "string"

View file

@ -103,7 +103,7 @@ The `getnetworkinfo` RPC {{summary_getNetworkInfo}}
- n: "→<br>`relayfee`"
t: "number (DASH)"
p: "Required<br>(exactly 1)"
d: "The minimum relay fee for non-free transactions in order for this node to accept it into its memory pool"
d: "The minimum relay fee per kilobyte for transactions in order for this node to accept it into its memory pool"
- n: "→<br>`incrementalfee`"
t: "number (DASH)"

View file

@ -11,7 +11,7 @@ http://opensource.org/licenses/MIT.
{% autocrossref %}
**_Removed in Dash Core 0.14.0._**
{{WARNING}} **_Removed in Dash Core 0.14.0._**
The `masternodebroadcast` RPC {{summary_masternodeBroadcast}}

View file

@ -3,6 +3,7 @@ This file is licensed under the MIT License (MIT) available on
http://opensource.org/licenses/MIT.
{% endcomment %}
{% assign filename="_includes/devdoc/dash-core/rpcs/rpcs/prioritisetransaction.md" %}
<!--__-->
##### PrioritiseTransaction
{% include helpers/subhead-links.md %}
@ -23,17 +24,7 @@ The `prioritisetransaction` RPC {{summary_prioritiseTransaction}}
{% enditemplate %}
*Parameter #2---the change to make to the virtual priority*
{% itemplate ntpd1 %}
- n: "Priority"
t: "number (real)"
p: "Required<br>(exactly 1)"
d: "If positive, the priority to add to the transaction in addition to its computed priority; if negative, the priority to subtract from the transaction's computed priory. Computed priority is the age of each input in days since it was added to the block chain as an output (coinage) times the value of the input in satoshis (value) divided by the size of the serialized transaction (size), which is `coinage * value / size`"
{% enditemplate %}
*Parameter #3---the change to make to the virtual fee*
*Parameter #2---the change to make to the virtual fee*
{% itemplate ntpd1 %}
- n: "Fee"
@ -53,12 +44,12 @@ The `prioritisetransaction` RPC {{summary_prioritiseTransaction}}
{% enditemplate %}
*Example from Dash Core 0.12.2*
*Example from Dash Core 0.14.0*
{% highlight bash %}
dash-cli -testnet prioritisetransaction \
f86c74f27fdd9c7e618d69b3606eeae1710b3f02fabede6ae8c88dd7bb756942 \
1234 456789
456789
{% endhighlight %}
Result:

View file

@ -11,7 +11,7 @@ http://opensource.org/licenses/MIT.
{% autocrossref %}
**_Removed in Dash Core 0.14.0._**
{{WARNING}} **_Removed in Dash Core 0.14.0._**
The `sentinelping` RPC {{summary_sentinelPing}}

View file

@ -671,18 +671,12 @@ Dash miner, as explained in the [block chain section][section block chain], and
so it is ultimately up to each miner to choose the minimum transaction fee they
will accept.
There is also a concept of so-called "[high-priority transactions][/en/glossary/high-priority-transaction]{:#term-high-priority-transactions}{:.term}"
which spend duffs that have not moved for a long time.
These "priority" transaction can be often exempt from the normal fee
requirements. As of Dash Core 0.12.2, 10 KB of each block are reserved for these
high-priority transactions. After the priority area, all transactions are
prioritized based on their fee per byte, with higher-paying transactions being
added in sequence until all of the available space is filled.
All transactions are prioritized based on their fee per byte, with higher-paying
transactions being added in sequence until all of the available space is filled.
<!-- Consider adding links to blockmaxsize and blockmaxweight options once available in the glossary. -->
As of Dash Core 0.12.2.x, a [minimum fee][/en/glossary/minimum-relay-fee]{:#term-minimum-fee}{:.term}(1,000 duffs following [DIP1][] activation) is required to
broadcast a non-priority transaction across the network. Any transaction paying
As of Dash Core 0.12.2.x, a [minimum fee][/en/glossary/minimum-relay-fee]{:#term-minimum-fee}{:.term} (1,000 duffs following [DIP1][] activation) is required to
broadcast a transaction across the network. Any transaction paying
only the minimum fee should be prepared to wait a long time before there's
enough spare space in a block to include it.

View file

@ -4,8 +4,8 @@ This file is licensed under the terms of its source texts{%endcomment%}
{% assign summary_addMultiSigAddress="adds a P2SH multisig address to the wallet." %}
{% assign summary_addNode="attempts to add or remove a node from the addnode list, or to try a connection to a node once." %}
{% assign summary_addWitnessAddress="adds a witness address for a script (with pubkey or redeem script known)." %}
{% assign summary_bLS="provides a set of commands to execute BLS-related actions." %}
{% assign summary_backupWallet="safely copies `wallet.dat`<!--noref--> to the specified file, which can be a directory or a path with filename." %}
{% assign summary_bls="provides a set of commands to execute BLS-related actions." %}
{% assign summary_bumpFee="replaces an unconfirmed wallet transaction that signaled RBF with a new transaction that pays a higher fee." %}
{% assign summary_clearBanned="clears list of banned nodes." %}
{% assign summary_createMultiSig="creates a P2SH multi-signature address." %}
@ -19,9 +19,9 @@ This file is licensed under the terms of its source texts{%endcomment%}
{% assign summary_dumpWallet="creates or overwrites a file with all wallet keys in a human-readable format." %}
{% assign summary_encryptWallet="encrypts the wallet with a passphrase. This is only to enable encryption for the first time. After encryption is enabled, you will need to enter the passphrase to use private keys." %}
{% assign summary_estimateFee="estimates the transaction fee per kilobyte that needs to be paid for a transaction to begin confirmation within a certain number of blocks." %}
{% assign summary_estimatePriority="estimates the priority that a transaction needs in order to be included within a certain number of blocks as a free high-priority transaction." %}
{% assign summary_estimatePriority="was removed in Dash Core 0.14.0." %}
{% assign summary_estimateSmartFee="estimates the transaction fee per kilobyte that needs to be paid for a transaction to begin confirmation within a certain number of blocks and returns the number of blocks for which the estimate is valid." %}
{% assign summary_estimateSmartPriority="estimates the priority that a transaction needs in order to be included within a certain number of blocks as a free high-priority transaction and returns the number of blocks for which the estimate is valid." %}
{% assign summary_estimateSmartPriority="was removed in Dash Core 0.14.0." %}
{% assign summary_fundRawTransaction="adds inputs to a transaction until it has enough in value to meet its out value." %}
{% assign summary_gObject="provides a set of commands for managing governance objects and displaying information about them." %}
{% assign summary_generate="mines blocks immediately (before the RPC call returns)." %}

View file

@ -209,13 +209,13 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-b7b8">Control</td>
<td class="tg-b7b8"><a href="#debug">Debug</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Updated in 0.12.3.0</td>
<td class="tg-dzk6">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Control</td>
<td class="tg-yw4l"><a href="#getinfo">GetInfo</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh"></td>
<td class="tg-baqh">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Control</td>
@ -233,7 +233,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-b7b8">Dash</td>
<td class="tg-b7b8"><a href="#getgovernanceinfo">GetGovernanceInfo</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Updated in 0.14.0.0</td>
<td class="tg-dzk6">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Dash</td>
@ -257,25 +257,25 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-b7b8">Dash</td>
<td class="tg-b7b8"><a href="#masternode">Masternode</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Updated in 0.14.0.0</td>
<td class="tg-dzk6">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Dash</td>
<td class="tg-yw4l"><a href="#masternodebroadcast">MasternodeBroadcast</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh">Removed in 0.14.0.0</td>
<td class="tg-baqh">Removed in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Dash</td>
<td class="tg-b7b8"><a href="#masternodelist">MasternodeList</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Updated in 0.14.0.0</td>
<td class="tg-dzk6">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Dash</td>
<td class="tg-yw4l"><a href="#mnsync">MnSync</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh">Updated in 0.14.0.0</td>
<td class="tg-baqh">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Dash</td>
@ -287,7 +287,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-yw4l">Dash</td>
<td class="tg-yw4l"><a href="#sentinelping">SentinelPing</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh">Removed in 0.14.0.0</td>
<td class="tg-baqh">Removed in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Dash</td>
@ -359,7 +359,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-yw4l">Mining</td>
<td class="tg-yw4l"><a href="#prioritisetransaction">PrioritiseTransaction</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh"></td>
<td class="tg-baqh">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Mining</td>
@ -407,7 +407,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-yw4l">Network</td>
<td class="tg-yw4l"><a href="#getnetworkinfo">GetNetworkInfo</a></td>
<td class="tg-baqh">Y</td>
<td class="tg-baqh">Updated in 0.12.3.0</td>
<td class="tg-baqh">Updated in 0.14.0</td>
</tr>
<tr>
<td class="tg-b7b8">Network</td>
@ -509,7 +509,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-b7b8">Util</td>
<td class="tg-b7b8"><a href="#estimatepriority">EstimatePriority</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Deprecated in 0.12.3.0</td>
<td class="tg-dzk6">Removed in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Util</td>
@ -521,7 +521,7 @@ th.tg-sort-header::-moz-selection { background:transparent; }th.tg-sort-header::
<td class="tg-b7b8">Util</td>
<td class="tg-b7b8"><a href="#estimatesmartpriority">EstimateSmartPriority</a></td>
<td class="tg-dzk6">Y</td>
<td class="tg-dzk6">Deprecated in 0.12.3.0</td>
<td class="tg-dzk6">Removed in 0.14.0</td>
</tr>
<tr>
<td class="tg-yw4l">Util</td>