From 1056bbdfcd40b6bc4e16844c6da5cf666e87b1bc Mon Sep 17 00:00:00 2001 From: Antoine Riard Date: Fri, 8 Jul 2022 19:36:23 -0400 Subject: [PATCH] Address comments remaining from #25353 --- doc/policy/mempool-replacements.md | 4 ++-- doc/release-notes.md | 4 ++-- test/functional/feature_rbf.py | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/policy/mempool-replacements.md b/doc/policy/mempool-replacements.md index fea0143757..430a96f228 100644 --- a/doc/policy/mempool-replacements.md +++ b/doc/policy/mempool-replacements.md @@ -15,8 +15,8 @@ other consensus and policy rules, each of the following conditions are met: *Rationale*: See [BIP125 explanation](https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki#motivation). - The Bitcoin Core implementation offers a node setting (`mempoolfullrbf`) to allow transaction - replacement without enforcement of the opt-in signaling rule. + Use the (`-mempoolfullrbf`) configuration option to allow transaction replacement without enforcement of the + opt-in signaling rule. 2. The replacement transaction only include an unconfirmed input if that input was included in one of the directly conflicting transactions. An unconfirmed input spends an output from a diff --git a/doc/release-notes.md b/doc/release-notes.md index 2c3bb27935..444926087b 100644 --- a/doc/release-notes.md +++ b/doc/release-notes.md @@ -87,8 +87,8 @@ New settings ------------ - A new `mempoolfullrbf` option has been added, which enables the mempool to - accept transaction replacement without enforcing the opt-in replaceability - signal. (#25353) + accept transaction replacement without enforcing BIP125 replaceability + signaling. (#25353) Tools and Utilities ------------------- diff --git a/test/functional/feature_rbf.py b/test/functional/feature_rbf.py index 8e5cbba01a..1a8362d94d 100755 --- a/test/functional/feature_rbf.py +++ b/test/functional/feature_rbf.py @@ -702,17 +702,16 @@ class ReplaceByFeeTest(BitcoinTestFramework): assert_raises_rpc_error(-26, "insufficient fee", self.nodes[0].sendrawtransaction, tx.serialize().hex()) def test_fullrbf(self): - txid = self.wallet.send_self_transfer(from_node=self.nodes[0])['txid'] - self.generate(self.nodes[0], 1) - confirmed_utxo = self.wallet.get_utxo(txid=txid) + confirmed_utxo = self.make_utxo(self.nodes[0], int(2 * COIN)) self.restart_node(0, extra_args=["-mempoolfullrbf=1"]) + assert self.nodes[0].getmempoolinfo()["fullrbf"] # Create an explicitly opt-out transaction optout_tx = self.wallet.send_self_transfer( from_node=self.nodes[0], utxo_to_spend=confirmed_utxo, - sequence=SEQUENCE_FINAL, + sequence=BIP125_SEQUENCE_NUMBER + 1, fee_rate=Decimal('0.01'), ) assert_equal(False, self.nodes[0].getmempoolentry(optout_tx['txid'])['bip125-replaceable']) @@ -728,6 +727,7 @@ class ReplaceByFeeTest(BitcoinTestFramework): # Optout_tx is not anymore in the mempool. assert optout_tx['txid'] not in self.nodes[0].getrawmempool() + assert conflicting_tx['txid'] in self.nodes[0].getrawmempool() if __name__ == '__main__': ReplaceByFeeTest().main()