# HG changeset patch # User Paul Morelle # Date 1529413438 -7200 # Node ID f0ea8b847831b87d931f7a25f763dda51be66595 # Parent e3d18de56417c1a30bd2124a3a6eabda8d77345f revlog: early return in _slicechunk when density is already good We don't need to do anything if we know we won't enter the second while loop. Save the overhead of the first loop by returning earlier. diff -r e3d18de56417 -r f0ea8b847831 mercurial/revlog.py --- a/mercurial/revlog.py Tue Jul 10 02:33:43 2018 +0200 +++ b/mercurial/revlog.py Tue Jun 19 15:03:58 2018 +0200 @@ -234,6 +234,10 @@ else: density = 1.0 + if density >= revlog._srdensitythreshold: + yield revs + return + # Store the gaps in a heap to have them sorted by decreasing size gapsheap = [] heapq.heapify(gapsheap)