[darcs-users] darcs record and huge patches

David Roundy droundy at jdj5.mit.edu
Wed Jan 28 17:20:51 UTC 2004

On Wed, Jan 28, 2004 at 06:04:48PM +0200, Aggelos Economopoulos wrote:
> Any idea what these memory areas are for?
> (this is from /proc/.../map; fields are: start, end, resident, private
> resident, object, protection, reference count, shadow count, flags,
> cow, needs cow, type. Type 'default' means MAP_ANON)
> 0x81e4000 0xe637000 4212 0 0xd3d3d960 rwx 2 0 0x2184 NCOW NNC default
> 0x2ab00000 0x36f00000 49965 0 0xd495b2a0 rwx 1 0 0x2184 NCOW NNC default
> most of the pages are resident, but I doubt darcs needs them all, that's
> why I asked if there's any way to reclaim them.

Hmmmm.  I've never looked at /proc/.../map, so I'm not sure what they'd
be.  The mapped files may be files in _darcs/current/, which get mmapped so
they can be compared with those in the working directory.  Other than that
I have very little idea.

> > I'd also be interested in your cvsps conversion script, as I've done
> > the same thing myself, and am optimistic that you may have done at
> > least part of it better than I did.  :) I've been playing with
> > converting the bkcvs linux kernel repository to darcs (so far it's
> > been I think about four days).  None of the patches took that
> > long--the biggest is 24M compressed, but it was all simple additions
> > rather than file modifications.  And I think most of the time is being
> > spent simply reading the listings of all the directories and checking
> > the file modification times on all the files. But that's because most
> > of the changesets only affect a few files.
> Yeah, small changesets take almost constant time, equal to the 'scan
> the whole tree' overhead. If only I could let darcs record know where to
> look. Consider this a feature request :)

Hmmm.  Yeah, that's something that another friend has been asking for.  He
figures that if you run darcs record --all in a subdirectory, only changes
in that directory should be recorded, and that you should be able to run
`darcs record foo.c bar.c` to record only changes to foo.c and bar.c.  I
think it's a good idea.  I hadn't considered that it could be used to speed
up automated calls (as in this case), but that's definitely an added
bonus... I'll put it on my internal TODO list (since I'm at work now).
David Roundy

More information about the darcs-users mailing list