Skip to content

Mining updates for 0.13.0 #8294

@sdaftuar

Description

@sdaftuar

There's a few mining-related to-do's that I thought we should track for the 0.13.0 release, so that we hopefully can avoid dealing with last-minute surprises.

  • Segwit's merge has disabled the ancestor feerate mining algorithm by default, unless miners start using the new -blockmaxcost argument instead of -blockmaxsize or set -blockmaxsize > 3999000. This is because the size-accounting required by -blockmaxsize hasn't been added to the package-selection code yet (which is optimized for fee per "block cost", aka "virtual size"). I plan to address this in a PR shortly by adding the size-accounting to the package-selection code. [Mining-related fixups for 0.13.0 #8295]
  • I noticed that -blockminsize is not supported by the package selection code. This is something that of course could be added, but this seems like a feature that may not be relevant to anyone anymore. Can we just remove this command line argument?
    EDIT: from discussion on IRC, seems like the best path forward will be to get rid of the argument, but warn users if they try to set it. [Mining-related fixups for 0.13.0 #8295]
  • Should we remove the old transaction selection algorithm, addScoreTxs()? I believe that the new package selection algorithm is strictly superior to the old algorithm, but it is of course new code that has not received the battle-testing in production environments that the old algorithm has received. Nevertheless, if we don't plan to add a way to enable the old algorithm, it seems to me like there's little reason to leave the dead code lying around -- we can always resurrect it from git history if we need to.
    My suggestion would be to remove it, but if someone else is interested in adding support to enable it from the command line, that seems fine too. [Mining-related fixups for 0.13.0 #8295]
  • We need to update the release notes -- description of the ancestor feerate mining algorithm and command line option changes (-blockmaxcost and its interaction with -blockmaxsize, and removal of -blockminsize if we choose to remove it). [Add release notes for mining changes #8374]
  • Improve the --help text for the -blockmaxcost option.
    Maybe we can cite the BIP where this is defined, perhaps combined with not translating the term "block cost" which is defined in the BIP? [Rename "block cost" to "block weight" #8363, mining: Improve -blockmaxcost help message #8359]

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions