Date: Sun, 24 Mar 2013 05:55:19 +0200 From: Markiyan Kushnir <markiyan.kushnir@gmail.com> To: freebsd-stable@freebsd.org Subject: Re: svn - but smaller? Message-ID: <514E7927.2010901@gmail.com> In-Reply-To: <web-11167614@mailback3.g2host.com> References: <web-11636850@mailback4.g2host.com> <513E2DA5.70200@mac.com> <web-12282796@mailback4.g2host.com> <op.wts7cnaeg7njmm@michael-think> <web-11149903@mailback3.g2host.com> <dd47b0701af3e2b6c92fe70fa0da3fc1.squirrel@webmail.ee.ryerson.ca> <web-11167614@mailback3.g2host.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hello John, Tested svnup for a while, and I can say it does its job well, and works basically as I would expect, so thanks for your initiative. Although it appears to be quite resource greedy. Most of the time it showed something like: PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 22270 mkushnir 1 102 0 44944K 31804K CPU0 1 6:22 97.56% a.out I looked at the source code, and found that it uses svn commands that are known as the "main command set". The program is implemented around get-dir and get-file. I think there is significant room for resource and performance improvement. Have you considered an approach to use what svn folks call the editor command set? I mean acting as a trivial svn client: we might ask the server to drive our checking out or updating. The server will be telling us only diffs. Checking out a full tree would be just another diff, although bigger than usually. We would also benefit from compression on the wire. Another advantage would be to always have consistent repo more-or-less guaranteed by the svn server. I've done some proof of concept recently, and the results look encouraging to me. For example, a do-nothing update really does nothing. A two-or-three revisions update takes a couple of seconds. And a full checkout of the base/stable/9 takes ~7m30s at 530kB/s to me. -- Markiyan. On 14.03.2013 04:30, John Mehr wrote: > > > > On Wed, 13 Mar 2013 14:50:43 -0400 > "David Magda" <dmagda@ee.ryerson.ca> wrote: >> On Tue, March 12, 2013 19:32, John Mehr wrote: >>> This sounds good to me, and as long as there's some sort >>> of a consensus that we're not breaking the principle of >>> least surprise, I'm all for it. The one default that may >>> be unexpected is the defaulting to the stable branch -- >>> people who track the security branches will be left out. >>> So maybe something like: >>> >>> svnup --ports >>> svnup --stable >>> svnup --security (or --release) >>> >>> Thoughts? >> >> If svnup will eventually going to be used to update a variety of >> repositories, on a plethora of operating systems, then hard coding the >> above may not be appropriate. Something akin to "svnup --repo={ports, >> stable, security, release}" may be better, and then have a configuration >> file with the settings. > > Hello, > > You're absolutely correct. It looks like someone has already forked the > code on github which seems like pretty solid evidence for taking as > flexible an approach as possible and minimizing the amount of hard coded > data. > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?514E7927.2010901>