<p><br>
On May 6, 2011 1:55 PM, &quot;Sune Foldager&quot; &lt;<a href="mailto:cryo@cyanite.org">cryo@cyanite.org</a>&gt; wrote:<br>
&gt;<br>
&gt; On Fri, May 06, 2011 at 01:43:57 +0200, Benoit Boissinot wrote:<br>
&gt;<br>
&gt;&gt; Sune, this makes me think about something we might not have emphasized enough:<br>
&gt;&gt; having an unconsistent deltabase in a revlog (e.g. mixed parent and<br>
&gt;&gt; tip, or even random things when using generaldelta) makes it really<br>
&gt;&gt; hard to generate a bundle suitable for older clients.<br>
&gt;<br>
&gt;<br>
&gt; Well not hard, just slow, right? You&#39;ll end up generating full revisions<br>
&gt; a lot, and calculating their deltas. But that&#39;s of course not so good.<br>
&gt;</p>
<p>It is really bad, reusing the delta helps a lot. Computing a bit more delta means 10 min instead of 2min generation time on the server. We really don&#39;t want that.<br>
&gt;<br>
&gt;&gt; This has been one of the big problem for parentdelta (which I hoped<br>
&gt;&gt; could solve by reordering the nodes when generating the bundle, but I<br>
&gt;&gt; need to test that more).<br>
&gt;&gt; I think there&#39;s more info on the parentdelta wiki page.<br>
&gt;<br>
&gt;<br>
&gt; Yeah, reordering might help a lot. Either revlog.group or the bundler<br>
&gt; could do some kinda deltaparent-aware toposort on the revs before the<br>
&gt; actual bundling process. I think that could work.<br>
&gt;<br>
&gt; -- <br>
&gt; Sune<br>
</p>