Skip site navigation (1)Skip section navigation (2)
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>