[darcs-devel] Re: darcs patch: Checkpoint optimisation fixes.

David Roundy droundy at abridgegame.org
Thu Feb 24 04:54:03 PST 2005


On Wed, Feb 23, 2005 at 02:52:04PM +0000, Tuomo Valkonen wrote:
> On 2005-02-23, David Roundy <droundy at abridgegame.org> wrote:
> > Perhaps the correct thing to do is to first run a
> > deep_optimize_patchset on the patchset and then consider all the
> > "lasts" to be candidates for checkpoints? deep_optimize_patchset goes
> > through and breaks the inventory at any tag at which it *can* be broken
> > (i.e. where all the preceding patches are included in the tag).
> 
> Now that I know what it does, maybe that would be the thing to do.

Yeah, I think so.  And having thought some more, I'm more convinced.

> > I'll wait on applying this until I've heard from you.  I'd also like to be
> > sure that you've actually run some tests with this before applying.  Even
> > better would be an addition to the test suite that break with the current
> > code!
> 
> The patch seems to work for me. I can now checkpoint tags that are some
> patches behind in _darcs/inventory, and it correctly splits the inventory if
> the patch isn't "out of order". In case of out of order patches it generates
> the checkpoint, but doesn't split the inventory. Maybe that would work for
> tags in other inventories too, but I didn't dare to venture there. get
> --partial won't work on such a checkpoint, though.

I think that the failure of get --partial on out-of-order tags is why we
should refuse to checkpoint such a tag by only accepting tags that are
in-order (as shown by deep_optimize_patchset).
-- 
David Roundy
http://www.darcs.net




More information about the darcs-devel mailing list