Skip to content

Conversation

ajtowns
Copy link
Contributor

@ajtowns ajtowns commented Aug 5, 2017

The "-vbignore=bit:start:end" option can be used to prevent bitcoin
from alerting the user of known but uninteresting proposed upgrades
that are being signalled via the version field.

This hopefully provides the feature requested in issue #8266, allow version bits to have an "ignore button". It requires specifying start and end times rather than a final block height, which should map better to BIP 9 implementations. It also allows multiple deployments on a single bit to be ignored independently -- if the bit is used in between any deployments, it will still generate warnings.

This setting will also avoid the bit from triggering the "Unknown block versions being mined" warning during the set period.

Copy link
Contributor

@promag promag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing update to help message.

@laanwj laanwj added the P2P label Oct 4, 2017
@laanwj laanwj requested a review from gmaxwell October 4, 2017 13:40
@laanwj
Copy link
Member

laanwj commented Oct 4, 2017

Concept ACK

Ping @gmaxwell which requested this.

@ajtowns ajtowns force-pushed the ignore-vbits branch 2 times, most recently from e65d827 to 5e16a25 Compare October 10, 2017 07:19
@ajtowns
Copy link
Contributor Author

ajtowns commented Oct 10, 2017

Rebased against master; updated help text; moved structure definition to versionbits.h; use emplace_back instead of push_back.

Added additional commit that removes the BIP109/bit 28 warning on testnet by default, without the user needing to specify the parameter.

@laanwj
Copy link
Member

laanwj commented Nov 16, 2017

It looks like interest in this got lost a bit due to recent drama, because it is not sure how feasible BIP9 still is in the first place.

But anyhow ping @gmaxwell (again, sorry).

@ajtowns
Copy link
Contributor Author

ajtowns commented Nov 18, 2017

Rebased; use an enum class instead of a bool for use_ignorebits argument to ComputeBlockVersion.

FWIW, I think version bits would still be useful for BIP8 or BIP148/BIP91-style UASF's; full node users can require miners to signal support (or to not signal support if they want to opt-out of a change) so as to allow two potential chains to be easily distinguished by SPV clients.

The "-vbignore=bit:start:end" option can be used to prevent bitcoin
from alerting the user of known but uninteresting proposed upgrades
that are being signalled via the version field.
This provides the ability to specify irrelevant versionbit signalling
as part of the chain parameters, in order to avoid issuing warnings for
possible consensus changes. The "-novbignoredefaults" option can be used
to disable this behaviour.

This patch ignores signalling for BIP109 via bit 28 in 2016/2017 on
testnet via this mechanism.
@ajtowns
Copy link
Contributor Author

ajtowns commented Mar 6, 2018

Going to close this until there's some clarity on what method might get used for soft-forks in future (bip 9, bip 8, something else)...

@ajtowns ajtowns closed this Mar 6, 2018
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants