comparison tests/test-fetch.out @ 7233:9f0e52e1df77

fix pull racing with push/commit (issue1320) changegroup() has a problem when nodes which does not descend from a node in <bases> are added to remote after the discovery phase. If that happens, changegroup() won't send the correct set of nodes, ie. some nodes will be missing. To correct it we have to find the set of nodes that both remote and self have (called <common>), and send all the nodes not in <common>. This fix has some overhead, in the worst case it will re-send a whole branch. A proper fix to avoid this overhead might be to change the protocol so that the <common> nodes are sent (instead of the <bases> of the missing nodes).
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
date Tue, 21 Oct 2008 17:00:35 +0200
parents 6489ee64b522
children 6163ef936a00
comparison
equal deleted inserted replaced
7232:c2ac09f81ec9 7233:9f0e52e1df77
98 pulling from n1 98 pulling from n1
99 searching for changes 99 searching for changes
100 adding changesets 100 adding changesets
101 adding manifests 101 adding manifests
102 adding file changes 102 adding file changes
103 added 1 changesets with 1 changes to 1 files 103 added 1 changesets with 1 changes to 2 files
104 % parent should be 2 (no automatic update) 104 % parent should be 2 (no automatic update)
105 2 105 2
106 106
107 % pull in changes on both foreign and local branches 107 % pull in changes on both foreign and local branches
108 updating working directory 108 updating working directory