[PATCH STABLE] log: restore cache used by --copies

Matt Mackall mpm at selenic.com
Sat Feb 25 21:43:01 UTC 2012


On Sat, 2012-02-25 at 19:40 +0100, Patrick Mezard wrote:
> # HG changeset patch
> # User Patrick Mezard <patrick at mezard.eu>
> # Date 1330195195 -3600
> # Branch stable
> # Node ID 280e834c9d15b0d65a0ee24374671e0cd2147f4e
> # Parent  60101427d618a0d774d2d1fd29838ec81f3bba7c
> log: restore cache used by --copies

Queued for stable, thanks.

> The {filelog -> linkrev -> copyfrom} cache was refactored and broken by:
> 
>   changeset:   10060:f780b1098efc
>   user:        Patrick Mezard <pmezard at gmail.com>
>   date:        Sun Dec 13 18:06:24 2009 +0100
>   summary:     templatekw: change {file_copies} behaviour, add
>                {file_copies_switch}
> 
> With --copies, this cache is accessed for every touched file of every revision.
> Unfortunately it is recreated for every revision, which means filelogs are
> parsed again. This patch makes the cache global again for all revisions.

> I do not know any good tool to trace memory consumption of these runs for
> comparisons. Watching the full mozilla run in top, the process did not
> seem to misbehave.

An approach I sometimes use is:

 while sleep 1; do smem -HP [h]g; done

where smem is:

http://www.selenic.com/smem/

-- 
Mathematics is the supreme nostalgia of our time.





More information about the Mercurial-devel mailing list