Patchwork [8,of,8] hidden: drop outdated comment about "dynamic" performance

login
register
mail settings
Submitter Pierre-Yves David
Date May 21, 2017, 3:20 p.m.
Message ID <676f348ac34851c8abce.1495380043@nodosa.octopoid.net>
Download mbox | patch
Permalink /patch/20794/
State Accepted
Headers show

Comments

Pierre-Yves David - May 21, 2017, 3:20 p.m.
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david@octobus.net>
# Date 1495374962 -7200
#      Sun May 21 15:56:02 2017 +0200
# Node ID 676f348ac34851c8abcee9f3fcb024286726c469
# Parent  844dbf80b468e08649627d2ba66e7ea7950d72d4
# EXP-Topic dynamicblocker
# Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
#              hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 676f348ac348
hidden: drop outdated comment about "dynamic" performance

This comment is now irrelevant since we have a faster algorithm and no cache.
Pierre-Yves David - May 21, 2017, 4:08 p.m.
This combines well with my obscache series for computing the hidden set 
from an unloaded obsstore.

In my mercurial repository (6K hidden changeset):
Before:   about 0.400s
After:    about 0.002m
Speed-up: about 200x

On some mozilla repository with few hidden changesets
Before:   about 0.085s
After:    about 0.001m
Speed-up: about 100x

I don't think we needs to worries about hidden computation time for a 
while after this. Especially since most of the loops are still in Python 
and C would speeds them greatly.

On 05/21/2017 05:20 PM, Pierre-Yves David wrote:
> # HG changeset patch
> # User Pierre-Yves David <pierre-yves.david@octobus.net>
> # Date 1495374962 -7200
> #      Sun May 21 15:56:02 2017 +0200
> # Node ID 676f348ac34851c8abcee9f3fcb024286726c469
> # Parent  844dbf80b468e08649627d2ba66e7ea7950d72d4
> # EXP-Topic dynamicblocker
> # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
> #              hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 676f348ac348
> hidden: drop outdated comment about "dynamic" performance
>
> This comment is now irrelevant since we have a faster algorithm and no cache.
>
> diff --git a/mercurial/repoview.py b/mercurial/repoview.py
> --- a/mercurial/repoview.py
> +++ b/mercurial/repoview.py
> @@ -29,11 +29,8 @@ def hideablerevs(repo):
>      return obsolete.getrevs(repo, 'obsolete')
>
>  def revealedrevs(repo):
> -    """Non-cacheable revisions blocking hidden changesets from being filtered.
> -
> -    Get revisions that will block hidden changesets and are likely to change,
> -    but unlikely to create hidden blockers. They won't be cached, so be careful
> -    with adding additional computation."""
> +    """non-cacheable revisions blocking hidden changesets from being filtered
> +    """
>
>      cl = repo.changelog
>      blockers = set()
>
Augie Fackler - May 22, 2017, 10:07 p.m.
On Sun, May 21, 2017 at 06:08:36PM +0200, Pierre-Yves David wrote:
> This combines well with my obscache series for computing the hidden set from
> an unloaded obsstore.
>
> In my mercurial repository (6K hidden changeset):
> Before:   about 0.400s
> After:    about 0.002m
> Speed-up: about 200x
>
> On some mozilla repository with few hidden changesets
> Before:   about 0.085s
> After:    about 0.001m
> Speed-up: about 100x

Do these numbers belong in a commit message here? or are they when
combined with that other series?

>
> I don't think we needs to worries about hidden computation time for a while
> after this. Especially since most of the loops are still in Python and C
> would speeds them greatly.
>
> On 05/21/2017 05:20 PM, Pierre-Yves David wrote:
> > # HG changeset patch
> > # User Pierre-Yves David <pierre-yves.david@octobus.net>
> > # Date 1495374962 -7200
> > #      Sun May 21 15:56:02 2017 +0200
> > # Node ID 676f348ac34851c8abcee9f3fcb024286726c469
> > # Parent  844dbf80b468e08649627d2ba66e7ea7950d72d4
> > # EXP-Topic dynamicblocker
> > # Available At https://www.mercurial-scm.org/repo/users/marmoute/mercurial/
> > #              hg pull https://www.mercurial-scm.org/repo/users/marmoute/mercurial/ -r 676f348ac348
> > hidden: drop outdated comment about "dynamic" performance
> >
> > This comment is now irrelevant since we have a faster algorithm and no cache.
> >
> > diff --git a/mercurial/repoview.py b/mercurial/repoview.py
> > --- a/mercurial/repoview.py
> > +++ b/mercurial/repoview.py
> > @@ -29,11 +29,8 @@ def hideablerevs(repo):
> >      return obsolete.getrevs(repo, 'obsolete')
> >
> >  def revealedrevs(repo):
> > -    """Non-cacheable revisions blocking hidden changesets from being filtered.
> > -
> > -    Get revisions that will block hidden changesets and are likely to change,
> > -    but unlikely to create hidden blockers. They won't be cached, so be careful
> > -    with adding additional computation."""
> > +    """non-cacheable revisions blocking hidden changesets from being filtered
> > +    """
> >
> >      cl = repo.changelog
> >      blockers = set()
> >
>
> --
> Pierre-Yves David
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel@mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Patch

diff --git a/mercurial/repoview.py b/mercurial/repoview.py
--- a/mercurial/repoview.py
+++ b/mercurial/repoview.py
@@ -29,11 +29,8 @@  def hideablerevs(repo):
     return obsolete.getrevs(repo, 'obsolete')
 
 def revealedrevs(repo):
-    """Non-cacheable revisions blocking hidden changesets from being filtered.
-
-    Get revisions that will block hidden changesets and are likely to change,
-    but unlikely to create hidden blockers. They won't be cached, so be careful
-    with adding additional computation."""
+    """non-cacheable revisions blocking hidden changesets from being filtered
+    """
 
     cl = repo.changelog
     blockers = set()