remotefilelog: when fetching history pack don't sort it

Summary: The packfile code already does the sort, no need to do it twice.

Reviewed By: DurhamG

Differential Revision: D15154517

fbshipit-source-id: 6ecfc65315a7e443e0c385a5a011f1b491b3f6ac
This commit is contained in:
Xavier Deguillard 2019-05-01 11:08:14 -07:00 committed by Facebook Github Bot
parent 0beecfdc5f
commit dea8bd9553

View File

@ -76,7 +76,6 @@ def receivepack(ui, fh, dpack, hpack):
receiveddata = []
receivedhistory = []
pendinghistory = defaultdict(dict)
with progress.bar(ui, _("receiving pack")) as prog:
while True:
filename = readpath(fh)
@ -84,8 +83,8 @@ def receivepack(ui, fh, dpack, hpack):
# Store the history for later sorting
for value in readhistory(fh):
node = value[0]
pendinghistory[filename][node] = value
node, p1, p2, linknode, copyfrom = value
hpack.add(filename, node, p1, p2, linknode, copyfrom)
receivedhistory.append((filename, node))
count += 1
@ -98,27 +97,6 @@ def receivepack(ui, fh, dpack, hpack):
break
prog.value += 1
# Add history to pack in toposorted order
with progress.bar(ui, _("storing pack"), total=len(pendinghistory)) as prog:
for filename, nodevalues in sorted(pendinghistory.iteritems()):
def _parentfunc(node):
p1, p2 = nodevalues[node][1:3]
parents = []
if p1 != nullid:
parents.append(p1)
if p2 != nullid:
parents.append(p2)
return parents
sortednodes = reversed(
shallowutil.sortnodes(nodevalues.iterkeys(), _parentfunc)
)
for node in sortednodes:
node, p1, p2, linknode, copyfrom = nodevalues[node]
hpack.add(filename, node, p1, p2, linknode, copyfrom)
prog.value += 1
return receiveddata, receivedhistory