Sat, 07 May 2011 22:40:17 +0200 revlog: support reading generaldelta revlogs
Sune Foldager <cryo@cyanite.org> [Sat, 07 May 2011 22:40:17 +0200] rev 14253
revlog: support reading generaldelta revlogs Generaldelta is a new revlog global flag. When it's turned on, the base field of each revision entry holds the deltaparent instead of the base revision of the current delta chain. This allows for great potential flexibility when generating deltas, as any revision can serve as deltaparent. Previously, the deltaparent for revision r was hardcoded to be r - 1. The base revision of the delta chain can still be accessed as before, since it is now computed in an iterative fashion, following the deltaparents backwards.
Sat, 07 May 2011 22:40:14 +0200 revlog: calculate base revisions iteratively
Sune Foldager <cryo@cyanite.org> [Sat, 07 May 2011 22:40:14 +0200] rev 14252
revlog: calculate base revisions iteratively This is in preparation for generaldelta, where the revlog entry base field is reinterpreted as the deltaparent. For that reason we also rename the base function to chainbase. Without generaldelta, performance is unaffected, but generaldelta will suffer from this in _addrevision, since delta chains will be walked repeatedly. A cache has been added to eliminate this problem completely.
Sat, 07 May 2011 22:37:40 +0200 revlog: remove the last bits of punched/shallow
Sune Foldager <cryo@cyanite.org> [Sat, 07 May 2011 22:37:40 +0200] rev 14251
revlog: remove the last bits of punched/shallow Most of it was removed in e7483ec3c374, but a few pieces were accidentally left behind.
(0) -10000 -3000 -1000 -300 -100 -30 -10 -3 +3 +10 +30 +100 +300 +1000 +3000 +10000 +30000 tip