Gmane
Favicon
From: Paul de Vrieze <pauldv <at> gentoo.org>
Subject: Re: life, the universe, and everything (why rsync?!)
Newsgroups: gmane.linux.gentoo.user
Date: 2003-05-08 20:54:51 GMT (6 years, 8 weeks, 2 days, 11 hours and 50 minutes ago)
On Thursday 08 May 2003 14:30, Rev. Jeffrey Paul wrote:
> since i first started using gentoo, the whole concept of using rsync has
> seemed incredibly silly to me.
>
> rsync requires special server and client software, increases loads on the
> servers, and significantly limits the number of mirrors (by not being
> http/ftp compatible).
>
> i can understand the reasoning behind rsync when gentoo was starting... it
> wasn't an issue of bandwidth and server load and thousands of users.  but
> now it is.
>
> "find /usr/portage | wc -l" shows more than forty thousand files in the
> portage tree.  my /usr/portage, without any distfiles, is over 170MB.
>
> i have an idea for a good distribution system that would save cpu,
> resources, bandwidth, and would allow for easy mirroring and proxying.  it
> would be scalable and simple to implement, running on top of http/ftp.
>
> it seems to me that there are no compelling reasons behind gentoo's
> continued usage of rsync.
>
> i'm going to write a draft of my idea for a better portage
> synchronization/update system.  in the meantime, i'm asking the portage
> maintainers/admins: are there _any_ real reasons (other than tradition)
> that rsync is still the standard?

First, I believe this is a topic for gentoo-dev. Most developers don't read 
gentoo-user, or, if they are subscribed, read only a small part of it.

Now, why the use of rsync:
- It is available
- It aims to minimize bandwidth
- It is stable
- We have used it (A system change would require extra testing and effort,
  also on the part of our volunteer mirrors).
- We have no time for evaluating many systems with uncertain reliability.
- The problem rsync solves is not an easy problem.

The often mentioned suggestion of "revisions" does not work. There is no 
guarantee of the users local systems tree state whatsoever. To ensure a 
correct tree, checks need to be performed to ensure that all changed/missing 
files are fetched from the server, and that all extra files are deleted. I 
don't want to say that a local filelist is impossible to implement, I do want 
to say it is hard to do.

Paul

ps. Rsync is a standard package on most unices.

-- 
Paul de Vrieze
Researcher
Mail: pauldv <at> cs.kun.nl
Homepage: http://www.devrieze.net