gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] [PATCH] arch speedups on big trees


From: Chris Mason
Subject: Re: [Gnu-arch-users] [PATCH] arch speedups on big trees
Date: Wed, 24 Dec 2003 17:42:00 -0500

One more, fixing a file descriptor leak and making tla update/commit
faster.  The id mapping directory is now in {arch}/++id-mapping, so it
doesn't get counted as source.  This means it gets regenerated when
copying a revision library instead of being linked.  A later
optimization could be to link the id mappings when linking from an
existing revision library.

I commented out the snap_inode_sig at the end of build-revision, it
seems to make more sense to take the inode signature once after the
whole revision is built than to redo the inode sig at each step.  This
plus making sure the inode mapping exists after building revision
libraries makes tla update faster, although not as good as tla replay.

I added --quick to tla commit, and changed arch_make_changeset to take a
file list for passing to the inventory funcs.  This reduces the time to
do a commit from 3 minutes or more to 6 seconds when you specify the
file list, and the file list spec can include add/deleted/renamed files.

Finally, tla library-add has a --replace option.  When an ancestor
exists in the revision library, it is renamed instead of a new hard link
copy being made.  This significantly reduces the number of inventories
required for a long string of commits being made from a script.  For
example, if you are importing a patch by patch set of changesets from
cvsps.  It has revision locking issues and other corner cases, but is
good for some specialized scripts.

I'll stop flooding the list with updates until I get feedback on the
code so far ;-) Hopefully we can get these changes into a form suitable
for inclusion.

-chris

Attachment: arch-faster-4.diff.gz
Description: GNU Zip compressed data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]