##// END OF EJS Templates
manifest: use `read_any_fast_delta` during remotefilelog's repack...
marmoute -
r52671:7e5ea2a0 default
parent child Browse files
Show More
@@ -468,18 +468,14 b' def keepset(repo, keyfn, lastkeepkeys=No'
468
468
469 # process the commits in toposorted order starting from the oldest
469 # process the commits in toposorted order starting from the oldest
470 for r in reversed(keep._list):
470 for r in reversed(keep._list):
471 if repo[r].p1().rev() in processed:
471 delta_from, m = repo[r].manifestctx().read_any_fast_delta(processed)
472 # if the direct parent has already been processed
472 if delta_from is None and lastmanifest is not None:
473 # then we only need to process the delta
473 # could not find a delta, compute one.
474 m = repo[r].manifestctx().readdelta()
474 # XXX (is this really faster?)
475 else:
475 full = m
476 # otherwise take the manifest and diff it
477 # with the previous manifest if one exists
478 if lastmanifest:
476 if lastmanifest:
479 m = repo[r].manifest().diff(lastmanifest)
477 m = m.diff(lastmanifest)
480 else:
478 lastmanifest = full
481 m = repo[r].manifest()
482 lastmanifest = repo[r].manifest()
483 processed.add(r)
479 processed.add(r)
484
480
485 # populate keepkeys with keys from the current manifest
481 # populate keepkeys with keys from the current manifest
General Comments 0
You need to be logged in to leave comments. Login now