Tom Hawkins writes:

 > Yes, fountain codes could speed up push and pulls by doing it in
 > parallel without having to synchronize which repositories are sending
 > which data.

YMMV, but in my experience (a) communication of the patches per se is
only an issue the first time I set up a branch, after that local
branches are cheap (though still way expensive compared to git or
Mercurial) and remote pulls are normally a tiny fraction of the
repo---almost all the time for a pull (which can be substantial) is
spent in handling the patch applications, not in transmitting data,
(b) a lot of my communication is one-to-one (eg, pushes are always to
a central repo, and many pulls are between me and one coworker), and
(c) git and Mercurial beat the tar out of everybody else at sucking
down data, so there's plenty of room for optimization of conventional
point-to-point transmissions (eg, use of HTTP pipelining has got a
lot of attention here over the last year), and examples of successful
technology are near at hand.

I don't think parallel communication really has much to offer to most
users over and above conventional optimization at this point, and also
probably involves a fair amount of extra management as well---the "D"
in "DVCS" often stands for "disconnected" as well as "distributed".
But for the fountain code to have much impact on a day-to-day basis,
you'd need to ensure that several fairly up-to-date mirrors are
available all the time.  Somebody has to admin those hosts and
maintain those mirrors.

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to