HomePhabricator

deactivate sigops limits in phonon upgrade

Description

deactivate sigops limits in phonon upgrade

Summary:
There are four sigops limits in validation, which all get deactivated here:

  • consensus per-block limit of 20000 per MB
  • consensus per-tx limit of 20000
  • standard per-tx limit of 4000
  • standard per-input limit of 15 for P2SH spends (only when -acceptnonstdtxn=0)

Additionally there is sigops tracking in mempool / mining:

  • mining respects the consensus per-block limit
  • virtualsize (priority) uses sigops

This Diff zeroes ALL sigops counts which indirectly means that all
limits are disabled. This is done using a flag analogous to the
checkdatasig counting flag, which is put into the consensus block
flags:

  • all validations after phonon upgrade will see 0 sigops, and
  • the mempool will be reprocessed, so all sigops counts will be 0 in mempool / mining.

Depends on D5060 D5061 D5062 D5076 D5077 D5160 D5168

Test Plan:

ninja check-extended
ninja check-upgrade-activated-extended

Rerun ninja check-all with cmake .. -DBUILD_BITCOIN_WALLET=OFF.

Reviewers: #bitcoin_abc, deadalnix

Reviewed By: #bitcoin_abc, deadalnix

Maniphest Tasks: T704

Differential Revision: https://reviews.bitcoinabc.org/D5029

Details

Provenance
Mark Lundeberg <markblundeberg@users.noreply.github.com>Authored on Feb 6 2020, 13:11
markblundebergPushed on Feb 15 2020, 10:03
Reviewer
Restricted Project
Differential Revision
D5029: deactivate sigops limits in phonon upgrade
Parents
rSTAGING925cb24b97b1: Merge #12079: Improve prioritisetransaction test coverage
Branches
Unknown
Tags
Unknown
Tasks
T704: sigChecks implementation