Page MenuHomePhabricator

[consensus] Extend the accepted tx versions to 3
Changes PlannedPublic

Authored by Fabien on Mar 2 2023, 13:50.

Details

Reviewers
PiRK
Group Reviewers
Restricted Project
Summary

This diff makes tx version 3 standard and consensus compliant after wellington activation. The versions 2 and 3 have similar meaning.

Depends on D13223.

Test Plan
ninja all check-extended
ninja bitcoin-fuzzers

Event Timeline

Fabien requested review of this revision.Mar 2 2023, 13:50

There is a test in mempool_accept.py checking that version 3 is rejected from the mempool. Should this be addressed in this diff?

self.log.info('Some nonstandard transactions')
tx = FromHex(CTransaction(), raw_tx_reference)
tx.nVersion = 3  # A version currently non-standard
self.check_mempool_result(
    result_expected=[
        {'txid': tx.rehash(), 'allowed': False, 'reject-reason': 'version'}],
    rawtxs=[ToHex(tx)],
)

It is not wrong right now, but it will fail after wellington.

Fabien planned changes to this revision.Mar 3 2023, 07:40

Fix mempool_accept.py after activation

This revision is now accepted and ready to land.Mar 3 2023, 08:26

Extend testing with version 3 in bip68 test

Fabien planned changes to this revision.Mar 3 2023, 17:36

After discussion with the various involved actors, I decided the benefit does not warrant the maintenance cost for this change.