public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Billy Tetrud <billy.tetrud@gmail•com>
To: Eric Voskuil <eric@voskuil•org>
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Trinary Version Signaling for softfork upgrades
Date: Wed, 30 Jun 2021 12:42:50 -0700	[thread overview]
Message-ID: <CAGpPWDbWbCoE3oFWh2DTw2JG-r=gOf8R=AE-U6QDKeQ1QPLnbg@mail.gmail.com> (raw)
In-Reply-To: <CAGpPWDYTOzJcksPxQDm8HOSjW-VPvSRskKw8YJR_CnmxR5Dmfw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 5868 bytes --]

It feels like this discussion has gotten a bit off topic. The proposal is
intended to provide a best-of-both-worlds middleground between BIP8 and
BIP9. It would be nice if we could bring it back to a discussion of my
proposal in the context of other existing deployment plans (BIP8, BIP9,
taproot's hybrid deployment, even flag days).

The main relevant actually to my proposal that have been mentioned, as far
as I can tell, is that Luke opined that explicit signaling of opposition
was unnecessary, because he thinks we shouldn't try to avoid chain splits
when there's any opposition. Jorge agreed that we shouldn't try to avoid
chain splits. But I don't really understand what either of you (Luke or
Jorge) are actually proposing is better than using my proposal. Are you
proposing LOT=true be added as an option to my proposal? Are you proposing
that we should always use a LOT=true style flag day, and not even consider
the option of permanent failure for a deployment? Or are you simply saying
that miner opposition is never relevant or useful to know during a
deployment?

Everything else has been only tenuously related:

* Who "controls" or "defines" bitcoin"?
* Who "controls" what happens during a deployment?
* Should we deploy based on miner signaling at all?

If there's so much to discuss on these philosophical points, maybe it makes
sense to branch that off into a separate thread. I'd appreciate it if we
can reconnect this discussion with the proposal this thread is about.



On Wed, Jun 30, 2021 at 12:30 PM Billy Tetrud <billy.tetrud@gmail•com>
wrote:

> @Jorge
> > I disagree...  I would oppose such a change no matter what other users
> or miners say.
>
> I don't know why you think we disagree on that point. I agree that I would
> oppose a change to 1GB blocks no matter what other users or miners say. You
> must have misunderstood me there.
>
> >>  Are you really saying that we should just hard fork every time
> instead of soft fork?
> > No
>
> So what are you advocating for then, exactly?
>
> >> Are you not at all worried about the costs associated with an
> increased orphan rate and reorg rate?
> > Orphan blocks are bad, yes, not sure what the point of your question is.
>
> The point is that if we just deployed with BIP8 LOT=true (as that seems to
> be the kind of thing you're advocating for) and only 60% of miners had
> upgraded to the new update by the time it activates, orphans and reorg rate
> and depths would greatly increase. The point of the question is: shouldn't
> we avoid that "when possible"?
>
> > What do you think of bip99?
>
> I haven't read it before, but after reading it, it seems like a reasonable
> discussion of possibilities and types of forks. It looks like you advocated
> that "miner voting" is appropriate for some of the types of forks. And yet,
> from the way you're talking in this thread, it sounds like you don't think
> any consensus rule change deployment should consider miner signaling. So
> I'm confused because it seems like the things you're saying here conflict
> with some of the things you wrote in BIP99.
>
> What specifically did you want me to get out of BIP99 in this context?
>
> @Eric
> > I’d also question the use of the term “majority”
>
> I just want to clarify that by "economic majority" I mean a set of users
> that presently accept more than 50% of the volume of payments in a given
> period of time. I definitely agree that no majority of any kind is needed
> for a split.
>
>
> On Wed, Jun 30, 2021 at 2:52 AM <eric@voskuil•org> wrote:
>
>> > From: Jorge Timón <jtimon@jtimon•cc>
>>
>> >> "Soft forks aren’t compatible without miner enforcement"
>> > Compatible with what?
>>
>> There is a good summary of what is meant by this term in BIP141:
>> https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki
>>
>> "Backward compatibility
>> As a soft fork, older software will continue to operate without
>> modification. Non-upgraded nodes, however, will not see nor validate the
>> witness data and will consider all witness programs as anyone-can-spend
>> scripts (except a few edge cases where the witness programs are equal to 0,
>> which the script must fail). Wallets should always be wary of
>> anyone-can-spend scripts and treat them with suspicion. Non-upgraded nodes
>> are strongly encouraged to upgrade in order to take advantage of the new
>> features."
>>
>> The explanation is however incomplete. If majority hash power does not
>> enforce the new rules, the above is incorrect. Granted the word "operate"
>> is vague, but clearly what is intended is that "non-upgraded" nodes will
>> not be on a different coin. But in fact they would be. The underlying
>> presumption is that BIP141 is not only signaled, but enforced by majority
>> hash power.
>>
>> >> "Soft forks without miner support cause splits".
>> > No, what causes splits are 3 things:
>> >
>> > 1) bugs
>> > 2) coordination mistakes
>> > 3) people wanting different rules.
>>
>> #3 (and possibly #4) is what we're talking about, so it's not at all
>> clear why you said "no".
>>
>> People change their rules, because #3. If majority hash power does not
>> enforce this (soft) change, it's a chain split.
>>
>> > Let me give an example. Let's say all users want change A.
>> >
>> > Only 60% miners want it.
>> > When it activates with LOT=true, will this cause a split?
>>
>> No, regardless of percentage adoption. You've proposed that it' is
>> majority hash power enforced.
>>
>> Furthermore, the term compatibility (see above) implies that not everyone
>> (your impossible presumption of 100%) is aligned.
>>
>> This is not a debatable subject as far as I'm concerned, but it's worth
>> discussion for those who aren't familiar.
>>
>> e
>>
>>

[-- Attachment #2: Type: text/html, Size: 7410 bytes --]

      reply	other threads:[~2021-06-30 19:43 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-26 20:21 Billy Tetrud
2021-06-26 21:13 ` Luke Dashjr
2021-06-26 21:43   ` Eric Voskuil
2021-06-26 22:05     ` Eric Voskuil
2021-06-27  8:47       ` Jorge Timón
2021-06-27  9:21         ` Eric Voskuil
2021-06-27 18:11           ` Billy Tetrud
2021-06-29  8:32             ` Jorge Timón
2021-06-29  8:44               ` Eric Voskuil
2021-06-29 17:55                 ` Luke Dashjr
2021-06-29 18:17                   ` Eric Voskuil
2021-06-29 19:28                     ` Jorge Timón
2021-06-29 19:44                       ` Eric Voskuil
2021-06-30  2:02                         ` Billy Tetrud
2021-06-30  8:55                           ` eric
2021-06-30  6:39                         ` Zac Greenwood
2021-06-30  9:16                         ` Jorge Timón
2021-06-30  9:52                           ` eric
2021-06-30 19:30                             ` Billy Tetrud
2021-06-30 19:42                               ` Billy Tetrud [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAGpPWDbWbCoE3oFWh2DTw2JG-r=gOf8R=AE-U6QDKeQ1QPLnbg@mail.gmail.com' \
    --to=billy.tetrud@gmail$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=eric@voskuil$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox