[PATCH 6 of 6] check-concurrency: expose the feature as 'server.check-concurrency'

Yuya Nishihara yuya at tcha.org
Thu Jun 8 11:58:18 EDT 2017


On Wed, 7 Jun 2017 14:52:18 -0400, Augie Fackler wrote:
> > On Jun 7, 2017, at 10:29, Yuya Nishihara <yuya at tcha.org> wrote:
> > On Sun, 04 Jun 2017 15:49:34 +0100, Pierre-Yves David wrote:
> >> # HG changeset patch
> >> # User Pierre-Yves David <pierre-yves.david at octobus.net>
> >> # Date 1495923158 -7200
> >> #      Sun May 28 00:12:38 2017 +0200
> >> # Node ID c58a31911d96c8fbb083388e55bf22cc473cc7b5
> >> # Parent  ae88951457de93c7f6286d449672b0b9d20c57f1
> >> # EXP-Topic pushrace
> >> # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
> >> #              hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r c58a31911d96
> >> check-concurrency: expose the feature as 'server.check-concurrency'
> > 
> >> --- a/mercurial/help/config.txt
> >> +++ b/mercurial/help/config.txt
> >> @@ -1668,6 +1668,16 @@ Controls generic server settings.
> >>     are highly recommended. Partial clones will still be allowed.
> >>     (default: False)
> >> 
> >> +``check-concurrency``
> >> +    Level of allowed race condition between two pushing client.
> >> +    - 'strict': push is abort if another client touched the repository
> >> +      while the push was preparing. (default)
> >> +    - 'related': push is only aborted if it affects head that got also
> >> +      affected while the push was preparing.
> >> +
> >> +    This requires compatible client (version 4.3 and later). Old client will
> >> +    use 'strict'.
> > 
> > I feel "race" is better than "concurrency" since I think "concurrency" doesn't
> > have any negative meaning. But obviously I'm not the right person to review
> > this patch. :)
> 
> This is tricky. race condition implies to my brain that it's always bad, which isn't necessarily the right feeling here.

Maybe I take the current level as check-race=paranoid.

> I might call it concurrent-push-mode or something (since it's only for pushes, and it's not strictly races either I guess)?

Sounds good.


More information about the Mercurial-devel mailing list