[28.x] backports + 28.3rc1 #33476

pull glozow wants to merge 17 commits into bitcoin:28.x from glozow:2025-09-28.3-backport changing 30 files +420 −154
  1. glozow commented at 7:18 pm on September 24, 2025: member

    Built on top of #33415

    Includes backports of

  2. DrahtBot added the label Backport on Sep 24, 2025
  3. DrahtBot commented at 7:18 pm on September 24, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33476.

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  4. glozow force-pushed on Sep 24, 2025
  5. in test/functional/test_framework/mempool_util.py:36 in 407a4946b3
    37     To avoid unintentional tx dependencies, the mempool filling txs are created with a
    38     tagged ephemeral miniwallet instance.
    39     """
    40     test_framework.log.info("Fill the mempool until eviction is triggered and the mempoolminfee rises")
    41     txouts = gen_return_txouts()
    42+<<<<<<< HEAD
    


    fanquake commented at 7:40 pm on September 24, 2025:
    Leftover from cherry-pick?

    glozow commented at 2:35 pm on September 26, 2025:
    fixed
  6. achow101 added this to the milestone 28.3 on Sep 25, 2025
  7. DrahtBot added the label Needs rebase on Sep 25, 2025
  8. DrahtBot commented at 11:00 pm on September 25, 2025: contributor
    🐙 This pull request conflicts with the target branch and needs rebase.
  9. [test] check miner doesn't select 0fee transactions
    Github-Pull: #33106
    Rebased-From: e5f896bb1f052fb8c7811c6024cb49143b427512
    e779d59eca
  10. [test] check bypass of minrelay for various minrelaytxfee settings
    Github-Pull: #33106
    Rebased-From: 85f498893f54ea7d84f2bdf12aa35d198edf8a72
    308778b7b6
  11. [test] RBF rule 4 for various incrementalrelayfee settings
    Github-Pull: #33106
    Rebased-From: 72dc18467dbfc16cdbda2dd109b087243b397799
    cf875f1559
  12. [test] explicitly check default -minrelaytxfee and -incrementalrelayfee
    Github-Pull: #33106
    Rebased-From:  1fbee5d7b61b83e68e4230c8a97ca308de92c4c3
    e3273e03b1
  13. [doc] assert that default min relay feerate and incremental are the same
    Github-Pull: #33106
    Rebased-From: d6213d6aa114aeed6804a585491d741386fd2739
    27b775586e
  14. test: add `BulkTransaction` helper to unit test transaction utils
    The padding method used matches the one used in MiniWallet,
    `MiniWallet._bulk_tx`.
    
    Github-Pull: #30784
    Rebased-From: ed7d2246661ec1789b7db0f21668270f0681ea4a
    b7ba016707
  15. [miner] lower default -blockmintxfee to 1sat/kvB
    Back when we implemented coin age priority as a miner policy, miners
    mempools might admit transactions paying very low fees, but then want to
    set a higher fee for block inclusion. However, since coin age priority
    was removed in v0.15, the block assembly policy is solely based on fees,
    so we do not need to apply minimum feerate rules in multiple places. In
    fact, the block assembly policy ignoring transactions that are added to
    the mempool is likely undesirable as we waste resources accepting and
    storing this transaction.
    
    Instead, rely on mempool policy to enforce a minimum entry feerate to
    the mempool (minrelaytxfee). Set the minimum block feerate to the
    minimum non-zero amount (1sat/kvB) so it collects everything it finds in
    mempool into the block.
    
    Github-Pull: #33106
    Rebased-From:  5f2df0ef78be7b24798d0983c9b962740608f1f4
    08eeb0d342
  16. test: Refactor fill_mempool to extract send_batch helper
    This is needed for the next commit
    
    Github-Pull: #30948
    Rebased-From: fa48be6f0233cfbd5c1eab7b832c913912062fa5
    a60281526b
  17. test: Add missing sync_mempools() to fill_mempool()
    Also disable the function, when it is not needed.
    
    Github-Pull: #30948
    Rebased-From: faf801515f8fcd11a3454105cab66c38f6f240fe
    f7dde40c70
  18. [prep/test] replace magic number 1000 with respective feerate vars
    Github-Pull: #33106
    Rebased-From: 3eab8b724044dc321f70e5eed66b149713158a04
    4d809efeb9
  19. [prep/util] help MockMempoolMinFee handle more precise feerates
    Use a virtual size of 1000 to keep precision when using a feerate
    (which is rounded to the nearest satoshi per kvb) that isn't just an
    integer.
    
    Github-Pull: #33106
    Rebased-From: 457cfb61b5323a13218b3cfb5a6a6d8b3a7c5f7f
    f25fc092ab
  20. [prep/test] make wallet_fundrawtransaction's minrelaytxfee assumption explicit
    Github-Pull: #33106
    Rebased-From: 2e515d2897eaa5a9b012eb78aef105e1cf80d42b
    a02e0a401c
  21. [policy] lower default minrelaytxfee and incrementalrelayfee to 100sat/kvB
    Let's say an attacker wants to use/exhaust the network's bandwidth, and
    has the choice between renting resources from a commercial provider and
    getting the network to "spam" itself it by sending unconfirmed
    transactions. We'd like the latter to be more expensive than the former.
    
    The bandwidth for relaying a transaction across the network is roughly
    its serialized size (plus relay overhead) x number of nodes. A 1000vB
    transaction is 1000-4000B serialized. With 100k nodes, that's 0.1-0.4GB
    If the going rate for commercial services is 10c/GB, that's like 1-4c per kvB
    of transaction data, so a 1000vB transaction should pay at least $0.04.
    
    At a price of 120k USD/BTC, 100sat is about $0.12. This price allows us
    to tolerate a large decrease in the conversion rate or increase in the
    number of nodes.
    
    Github-Pull: #33106
    Rebased-From: 6da5de58cabc4133c379baa50845e30e5bc6b3e4
    66559d1a4a
  22. test: complete BDB parser (handle internal/overflow pages, support all page sizes)
    This aims to complete our test framework BDB parser to reflect
    our read-only BDB parser in the wallet codebase. This could be
    useful both for making review of #26606 easier and to also possibly
    improve our functional tests for the BDB parser by comparing with
    an alternative implementation.
    
    Github-Pull: #30125
    Rebased-From: 01ddd9f646a5329a92341bb216f3757fa97c0709
    6ede736da1
  23. test: compare BDB dumps of test framework parser and wallet tool
    Github-Pull: #30125
    Rebased-From: d45eb3964f693eddcf96f1e4083cf19d327be989
    18f6430b4a
  24. [doc] update release notes for 28.x d3194cb8cd
  25. [doc] manpages for 28.3rc1 78b9686ba9
  26. glozow force-pushed on Sep 26, 2025
  27. glozow marked this as ready for review on Sep 26, 2025
  28. glozow commented at 2:46 pm on September 26, 2025: member
    Ready for review, though I think the tidy job tripped somehow?

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-09-26 15:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me