[PATCH 1 of 2 STABLE] annotate: reuse already calculated annotation

Kevin Bullock kbullock+mercurial at ringworld.org
Thu Mar 28 10:35:46 CDT 2013


On 28 Mar 2013, at 5:36 AM, FUJIWARA Katsunori wrote:

> # HG changeset patch
> # User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
> # Date 1364464124 -32400
> # Branch stable
> # Node ID 53691948fe037f64fe97d4eb7fad76ebda4edf6a
> # Parent  43dfb6fce6a76168766f3b73f4c991ab811590ec
> annotate: reuse already calculated annotation
> 
> Before this patch, annotation is re-calculated even if it is already
> calculated. This may cause unexpected annotation, because already
> cleared "pcache" ("pcache[f] = []") prevents from scanning ancestors.
> 
> This patch reuses already calculated annotation if it is available.
> 
> In fact, "reusable" situation should be seen only on legacy
> repositories which include the merging between the revision and its
> ancestor, because:
> 
>  - tree is scanned in depth-first
> 
>    without such merging, annotation result should be released soon
> 
>  - recent Mercurial doesn't allow such merging

...except that we _do_ allow it if the ancestor is on a different named branch.

pacem in terris / мир / शान्ति / ‎‫سَلاَم‬ / 平和
Kevin R. Bullock



More information about the Mercurial-devel mailing list