# HG changeset patch # User Boris Feld # Date 2018-07-10 22:17:05 # Node ID d083ae26c325d7732594ff262aaa0f1b8eeb7157 # Parent f0ea8b847831b87d931f7a25f763dda51be66595 revlog: early return in _slicechunk when span is already small enough If the full span is smaller than the minimum gap size we'll consider, we know we won't do any slicing and we can return earlier. diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -227,6 +227,10 @@ def _slicechunk(revlog, revs): endbyte = start(revs[-1]) + length(revs[-1]) readdata = deltachainspan = endbyte - startbyte + if deltachainspan < revlog._srmingapsize: + yield revs + return + chainpayload = sum(length(r) for r in revs) if deltachainspan: