aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/release-notes-30493.md4
-rw-r--r--src/kernel/mempool_options.h2
-rwxr-xr-xtest/functional/feature_rbf.py5
-rwxr-xr-xtest/functional/mempool_accept.py1
-rwxr-xr-xtest/functional/mempool_truc.py2
-rwxr-xr-xtest/functional/p2p_permissions.py5
6 files changed, 15 insertions, 4 deletions
diff --git a/doc/release-notes-30493.md b/doc/release-notes-30493.md
new file mode 100644
index 0000000000..98afbcc7d1
--- /dev/null
+++ b/doc/release-notes-30493.md
@@ -0,0 +1,4 @@
+Full Replace-By-Fee
+===================
+
+`mempoolfullrbf=1` is now set by default.
diff --git a/src/kernel/mempool_options.h b/src/kernel/mempool_options.h
index 0850b2e60e..4e1e24a11d 100644
--- a/src/kernel/mempool_options.h
+++ b/src/kernel/mempool_options.h
@@ -22,7 +22,7 @@ static constexpr unsigned int DEFAULT_BLOCKSONLY_MAX_MEMPOOL_SIZE_MB{5};
/** Default for -mempoolexpiry, expiration time for mempool transactions in hours */
static constexpr unsigned int DEFAULT_MEMPOOL_EXPIRY_HOURS{336};
/** Default for -mempoolfullrbf, if the transaction replaceability signaling is ignored */
-static constexpr bool DEFAULT_MEMPOOL_FULL_RBF{false};
+static constexpr bool DEFAULT_MEMPOOL_FULL_RBF{true};
/** Whether to fall back to legacy V1 serialization when writing mempool.dat */
static constexpr bool DEFAULT_PERSIST_V1_DAT{false};
/** Default for -acceptnonstdtxn */
diff --git a/test/functional/feature_rbf.py b/test/functional/feature_rbf.py
index cd5f5734c9..b660b96935 100755
--- a/test/functional/feature_rbf.py
+++ b/test/functional/feature_rbf.py
@@ -26,15 +26,18 @@ class ReplaceByFeeTest(BitcoinTestFramework):
def set_test_params(self):
self.num_nodes = 2
+ # both nodes disable full-rbf to test BIP125 signaling
self.extra_args = [
[
+ "-mempoolfullrbf=0",
"-limitancestorcount=50",
"-limitancestorsize=101",
"-limitdescendantcount=200",
"-limitdescendantsize=101",
],
- # second node has default mempool parameters
+ # second node has default mempool parameters, besides mempoolfullrbf being disabled
[
+ "-mempoolfullrbf=0",
],
]
self.supports_cli = False
diff --git a/test/functional/mempool_accept.py b/test/functional/mempool_accept.py
index 44a36697c6..4d08575255 100755
--- a/test/functional/mempool_accept.py
+++ b/test/functional/mempool_accept.py
@@ -55,6 +55,7 @@ class MempoolAcceptanceTest(BitcoinTestFramework):
self.num_nodes = 1
self.extra_args = [[
'-txindex','-permitbaremultisig=0',
+ '-mempoolfullrbf=0',
]] * self.num_nodes
self.supports_cli = False
diff --git a/test/functional/mempool_truc.py b/test/functional/mempool_truc.py
index 3f57b3e356..28f3256ef1 100755
--- a/test/functional/mempool_truc.py
+++ b/test/functional/mempool_truc.py
@@ -162,7 +162,7 @@ class MempoolTRUC(BitcoinTestFramework):
self.check_mempool([tx_v3_bip125_rbf_v2["txid"], tx_v3_parent["txid"], tx_v3_child["txid"]])
- @cleanup(extra_args=None)
+ @cleanup(extra_args=["-mempoolfullrbf=0"])
def test_truc_bip125(self):
node = self.nodes[0]
self.log.info("Test TRUC transactions that don't signal BIP125 are replaceable")
diff --git a/test/functional/p2p_permissions.py b/test/functional/p2p_permissions.py
index a9b164b078..c881dd6ff4 100755
--- a/test/functional/p2p_permissions.py
+++ b/test/functional/p2p_permissions.py
@@ -119,6 +119,9 @@ class P2PPermissionsTests(BitcoinTestFramework):
self.log.debug("Check that node[1] will not send an invalid tx to node[0]")
tx.vout[0].nValue += 1
+ # add dust to cause policy rejection but no disconnection
+ tx.vout.append(tx.vout[0])
+ tx.vout[-1].nValue = 0
txid = tx.rehash()
# Send the transaction twice. The first time, it'll be rejected by ATMP because it conflicts
# with a mempool transaction. The second time, it'll be in the m_lazy_recent_rejects filter.
@@ -126,7 +129,7 @@ class P2PPermissionsTests(BitcoinTestFramework):
[tx],
self.nodes[1],
success=False,
- reject_reason='{} (wtxid={}) from peer=0 was not accepted: txn-mempool-conflict'.format(txid, tx.getwtxid())
+ reject_reason='{} (wtxid={}) from peer=0 was not accepted: dust'.format(txid, tx.getwtxid())
)
p2p_rebroadcast_wallet.send_txs_and_test(