[PATCH RFC] revlog/changegroup: use callbacks for populating efiles

Gregory Szorc gregory.szorc at gmail.com
Sat Jul 11 13:26:34 CDT 2015


On Fri, Jul 10, 2015 at 5:03 PM, Matt Mackall <mpm at selenic.com> wrote:

> On Fri, 2015-07-10 at 16:46 -0700, Gregory Szorc wrote:
> > # HG changeset patch
> > # User Gregory Szorc <gregory.szorc at gmail.com>
> > # Date 1436571961 25200
> > #      Fri Jul 10 16:46:01 2015 -0700
> > # Node ID bca84aa6ea80b386a01c245e7f4e4ebdb720cd8c
> > # Parent  648323f41a89619d9eeeb7287213378c340866c8
> > revlog/changegroup: use callbacks for populating efiles
>
> Probably needs to use the flush() thingy that the nearby censor code is
> using.
>

Calling flush() makes the error go away!

While my SSD equipped MBP didn't appear to exhibit a slowdown unbundling
mozilla-central, flushing file descriptors after applying each changeset
feels a bit excessive and it makes me uncomfortable due to potential
performance implications. I just don't think an extra I/O related syscall
should be required for this feature.

But you have a stronger grasp on these things than me. Is calling flush()
after every changeset add acceptable? Keep in mind this will be the only
behavior for addchangegroup(), regardless of whether progress bars are
displayed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20150711/763a217d/attachment.html>


More information about the Mercurial-devel mailing list