From 4b8d2bc625a15adb2402fe91f7acb9d233153ed9 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Thu, 14 Jan 2016 20:23:27 +0000 Subject: [PATCH 1/5] release-notes: Cover priority changes correctly, removing mentions of possible futures --- doc/release-notes.md | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 0b8339aae..5db30c33a 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -20,7 +20,7 @@ installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux). Downgrade warning ------------------- +----------------- ### Downgrade to a version < 0.10.0 @@ -141,7 +141,7 @@ sufficient fee, as described in [BIP 125] (https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki). RPC: Random-cookie RPC authentication ---------------------------------------- +------------------------------------- When no `-rpcpassword` is specified, the daemon now uses a special 'cookie' file for authentication. This file is generated with random content when the @@ -169,19 +169,22 @@ Relay and Mining: Priority transactions --------------------------------------- Transactions that do not pay the minimum relay fee, are called "free -transactions" or priority transactions. Previous versions of Bitcoin -Core would relay and mine priority transactions depending on their -setting of `-limitfreerelay=` (default: `r=15` kB per minute) and -`-blockprioritysize=` (default: `50000` bytes of a block's -priority space). +transactions" or priority transactions. Bitcoin Core relays and mines +priority transactions depending on the setting of `-limitfreerelay=` +(default: `r=15` kB per minute) and `-blockprioritysize=`. -Priority code is scheduled for removal in Bitcoin Core 0.13. In -Bitcoin Core 0.12, the default block priority size has been set to `0` -and the priority calculation has been simplified to only include the -coin age of inputs that were in the blockchain at the time the transaction -was accepted into the mempool. In addition priority transactions are not -accepted to the mempool if mempool limiting has triggered a higher effective -minimum relay fee. +In Bitcoin Core 0.12, priority transactions are not accepted to the mempool nor +relayed if mempool limiting has triggered a higher effective minimum relay fee. + +Mining of priority transactions is also now disabled by default. To re-enable +it, simply set `-blockprioritysize=` where is the size in bytes of your +blocks to reserve for priority transactions. The old default was 50k, so to +retain the same policy, you must set `-blockprioritysize=50000`. + +Additionally, calculation of the priority for transactions received with +unconfirmed inputs is no longer updated correctly when they are received with +unconfirmed inputs, so miners must continue to use 0.11 if accurate priority +accounting is important to them. Automatically use Tor hidden services ------------------------------------- @@ -335,7 +338,7 @@ Note that the output of the RPC `decodescript` did not change because it is configured specifically to process scriptPubKey and not scriptSig scripts. RPC: SSL support dropped ----------------------------- +------------------------ SSL support for RPC, previously enabled by the option `rpcssl` has been dropped from both the client and the server. This was done in preparation for removing From 73a0375ebedb3cf8c51189292ce80faa04c61fa4 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Tue, 9 Feb 2016 08:13:38 +0000 Subject: [PATCH 2/5] release-notes: Mention possibility of priority removal in 0.13, uncertainty of priority calculation being changed back, and request community input --- doc/release-notes.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/doc/release-notes.md b/doc/release-notes.md index 5db30c33a..3b7c2b0f6 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -186,6 +186,12 @@ unconfirmed inputs is no longer updated correctly when they are received with unconfirmed inputs, so miners must continue to use 0.11 if accurate priority accounting is important to them. +This internal automatic prioritization handling is being considered for removal +entirely in Bitcoin Core 0.13, and it is at this time undecided whether the +inaccurate priority calculation will be fixed or left as-is in future releases. +Community direction on this topic is particularly requested to help set project +priorities. + Automatically use Tor hidden services ------------------------------------- From d0dbb6daeeca5eced16240e2723c0ee6ce06e8f9 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Tue, 9 Feb 2016 21:28:57 +0000 Subject: [PATCH 3/5] release-notes: Remove suggestion to use 0.11 --- doc/release-notes.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 3b7c2b0f6..1a9790f14 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -182,9 +182,7 @@ blocks to reserve for priority transactions. The old default was 50k, so to retain the same policy, you must set `-blockprioritysize=50000`. Additionally, calculation of the priority for transactions received with -unconfirmed inputs is no longer updated correctly when they are received with -unconfirmed inputs, so miners must continue to use 0.11 if accurate priority -accounting is important to them. +unconfirmed inputs is no longer updated accurately based on those inputs. This internal automatic prioritization handling is being considered for removal entirely in Bitcoin Core 0.13, and it is at this time undecided whether the From 3450f4cc957abc531c8dd3c10681d7ff8deae0f8 Mon Sep 17 00:00:00 2001 From: Gregory Maxwell Date: Tue, 9 Feb 2016 22:46:00 +0000 Subject: [PATCH 4/5] release-notes: Significantly rewrite priority transactions section --- doc/release-notes.md | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 1a9790f14..0eb16156a 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -168,27 +168,33 @@ three bytes overhead) Relay and Mining: Priority transactions --------------------------------------- -Transactions that do not pay the minimum relay fee, are called "free -transactions" or priority transactions. Bitcoin Core relays and mines -priority transactions depending on the setting of `-limitfreerelay=` +Bitcoin Core has a heuristic 'priority' based on coin value and age for +transactions which do not meet pay the minimum relay fee. Bitcoin Core relays +and mines these transactions depending on the setting of `-limitfreerelay=` (default: `r=15` kB per minute) and `-blockprioritysize=`. -In Bitcoin Core 0.12, priority transactions are not accepted to the mempool nor -relayed if mempool limiting has triggered a higher effective minimum relay fee. +In Bitcoin Core 0.12 when mempool limit has been reached a higher minimum relay +fee takes effect to limit memory usage. Transactions which do not meet this +higher effective minimum relay fee will not be relayed or mined even if they +would rank highly according to the priority heuristic if they were accepted. -Mining of priority transactions is also now disabled by default. To re-enable -it, simply set `-blockprioritysize=` where is the size in bytes of your -blocks to reserve for priority transactions. The old default was 50k, so to -retain the same policy, you must set `-blockprioritysize=50000`. +In Bitcoin Core 0.12 the reserved space for priority heuristic selected +transactions is also set to zero. -Additionally, calculation of the priority for transactions received with -unconfirmed inputs is no longer updated accurately based on those inputs. +To re-enable it, simply set `-blockprioritysize=` where is the size in bytes +of your blocks to reserve for these transactions. The old default was 50k, so +to retain the same policy, you would set `-blockprioritysize=50000`. + +Additionally, as a result of computational simplifications, the priority value +used for transactions received with unconfirmed inputs is lower than in prior +versions to due avoiding recomputing the amounts as transactions confirm. + +External miner policy set via the prioritisetransaction RPC to rank +transactions already in the mempool continues to work as it has previously. This internal automatic prioritization handling is being considered for removal -entirely in Bitcoin Core 0.13, and it is at this time undecided whether the -inaccurate priority calculation will be fixed or left as-is in future releases. -Community direction on this topic is particularly requested to help set project -priorities. +entirely in Bitcoin Core 0.13. Community direction on this topic is +particularly requested to help set project priorities. Automatically use Tor hidden services ------------------------------------- From b46000415c24d421c5d25a812fe3025a7af1b708 Mon Sep 17 00:00:00 2001 From: Luke Dashjr Date: Tue, 9 Feb 2016 23:31:30 +0000 Subject: [PATCH 5/5] release-notes: Minor corrections and clarifications re Priority --- doc/release-notes.md | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/doc/release-notes.md b/doc/release-notes.md index 0eb16156a..3408c4c79 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -168,33 +168,38 @@ three bytes overhead) Relay and Mining: Priority transactions --------------------------------------- -Bitcoin Core has a heuristic 'priority' based on coin value and age for -transactions which do not meet pay the minimum relay fee. Bitcoin Core relays -and mines these transactions depending on the setting of `-limitfreerelay=` -(default: `r=15` kB per minute) and `-blockprioritysize=`. +Bitcoin Core has a heuristic 'priority' based on coin value and age. This +calculation is used for relaying of transactions which do not meet pay the +minimum relay fee, and can be used as an alternative way of sorting +transactions for mined blocks. Bitcoin Core will relay transactions with +insufficient fees depending on the setting of `-limitfreerelay=` (default: +`r=15` kB per minute) and `-blockprioritysize=`. -In Bitcoin Core 0.12 when mempool limit has been reached a higher minimum relay -fee takes effect to limit memory usage. Transactions which do not meet this -higher effective minimum relay fee will not be relayed or mined even if they -would rank highly according to the priority heuristic if they were accepted. +In Bitcoin Core 0.12, when mempool limit has been reached a higher minimum +relay fee takes effect to limit memory usage. Transactions which do not meet +this higher effective minimum relay fee will not be relayed or mined even if +they rank highly according to the priority heuristic. -In Bitcoin Core 0.12 the reserved space for priority heuristic selected -transactions is also set to zero. - -To re-enable it, simply set `-blockprioritysize=` where is the size in bytes -of your blocks to reserve for these transactions. The old default was 50k, so -to retain the same policy, you would set `-blockprioritysize=50000`. +The mining of transactions based on their priority is also now disabled by +default. To re-enable it, simply set `-blockprioritysize=` where is the size +in bytes of your blocks to reserve for these transactions. The old default was +50k, so to retain approximately the same policy, you would set +`-blockprioritysize=50000`. Additionally, as a result of computational simplifications, the priority value used for transactions received with unconfirmed inputs is lower than in prior -versions to due avoiding recomputing the amounts as transactions confirm. +versions due to avoiding recomputing the amounts as input transactions confirm. -External miner policy set via the prioritisetransaction RPC to rank +External miner policy set via the `prioritisetransaction` RPC to rank transactions already in the mempool continues to work as it has previously. +Note, however, that if mining priority transactions is left disabled, the +priority delta will be ignored and only the fee metric will be effective. This internal automatic prioritization handling is being considered for removal -entirely in Bitcoin Core 0.13. Community direction on this topic is -particularly requested to help set project priorities. +entirely in Bitcoin Core 0.13, and it is at this time undecided whether the +more accurate priority calculation for chained unconfirmed transactions will be +restored. Community direction on this topic is particularly requested to help +set project priorities. Automatically use Tor hidden services -------------------------------------