D2647: setdiscovery: make progress on most connected groups each roundtrip

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Tue May 21 17:05:24 EDT 2019


martinvonz added a comment.


  In https://phab.mercurial-scm.org/D2647#93256, @marmoute wrote:
  
  > I feel like I am missing something. Your commit message seems to be talking using at least as many item in the sameple than there is independant connected set. However your code seems to use "heads(undecided)" that is a quite different. Using independant connected set seems like a good trade off (but might be expensive to compute). Using all heads can significantly bloat the discovery without giving it a significant edge in many cases.
  
  
  Good point. The case I can think of is when you have a tree of commits on the local side. Something like this:
  
    o
    | o
    | | o
    | | | o
    | | |/
    | |/
    | o
    | |
    | o
    | |
    | o
    |/
    o
    ~
  
  If we have a long sequence of commits there and many heads, we would increase the sampling of the (mostly-)linear part unnecessarily. I'll see if there's an easy way to improve that.
  
  > Can you clarify this ?

INLINE COMMENTS

> marmoute wrote in setdiscovery.py:113
> Calling this "limited argument" seems like wireprotocol details leaking into more abstract discovery logic. Can we give it a different name ? (maybe something like "maxsize=200" or "extensiblesample=False") ?

Good point. Done.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2647

To: martinvonz, #hg-reviewers, indygreg, marmoute
Cc: indygreg, mercurial-devel


More information about the Mercurial-devel mailing list