From owner-freebsd-stable@FreeBSD.ORG Sun Mar 31 09:53:02 2013 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2BD482B9 for ; Sun, 31 Mar 2013 09:53:02 +0000 (UTC) (envelope-from markiyan.kushnir@gmail.com) Received: from mail-ee0-f47.google.com (mail-ee0-f47.google.com [74.125.83.47]) by mx1.freebsd.org (Postfix) with ESMTP id B6277345 for ; Sun, 31 Mar 2013 09:53:01 +0000 (UTC) Received: by mail-ee0-f47.google.com with SMTP id t10so701247eei.6 for ; Sun, 31 Mar 2013 02:52:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=qYm4XASuNSzi2ETyl8Kh1UkH7zicL0tBsq64aN9iAfs=; b=APJ3s2lPrlWKzm7cp139Mwq+146cBMEpc3AQy5gG5VvbPoYaYZsHXpyJf+o84LgPgk Z+F5Vwu/j8QCZLRBlrtUxobS9P/ebVqC5tH8RMU20b01gJ3S3dCAEtwDesMRv3Lds/zo cVwVSCRq9lxRylfCNAfJ/ZXL/cIzYyzpWGollZBR0j8rjyy4A2DMIpH0TK7CCzi36bmN 24P3f9yRWLGNorA4YnymzqY+3kAOHlE3KTqPZP4uep2QCFU0/+MP74CkqqKaaL9BSaAG ecyWqvr2DomRZRs1PuR3/GVxEvPmGgqNLSKQ1/0U5/S0lij34cW1SJqOzoQjEz+IFMs3 opxQ== X-Received: by 10.14.218.71 with SMTP id j47mr25782767eep.28.1364723574144; Sun, 31 Mar 2013 02:52:54 -0700 (PDT) Received: from mkushnir.zapto.org (159-73-132-95.pool.ukrtel.net. [95.132.73.159]) by mx.google.com with ESMTPS id bc1sm14583327eeb.11.2013.03.31.02.52.53 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 31 Mar 2013 02:52:53 -0700 (PDT) Message-ID: <51580718.1010501@gmail.com> Date: Sun, 31 Mar 2013 12:51:20 +0300 From: Markiyan Kushnir User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:16.0) Gecko/20121119 Thunderbird/16.0.2 MIME-Version: 1.0 To: freebsd-stable@freebsd.org Subject: Re: svn - but smaller? References: <513E2DA5.70200@mac.com> <514E7927.2010901@gmail.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 31 Mar 2013 09:53:02 -0000 On 25.03.2013 02:55, John Mehr wrote: > > > > On Sun, 24 Mar 2013 05:55:19 +0200 > Markiyan Kushnir wrote: >> 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. > > Hello, > > The results I was getting from testing out the svn protocol's editor > command set were unpleasant enough to put it into the "come back to this > later" category while I worked on implementing the http/https side. The > good news it that the http side is *much* easier to work with in this > respect and getting a report with filenames and MD5/SHA-1 signatures for > all of the files in the repository can be obtained all at once. I > should have a new and improved version ready to go this weekend or early > next week at the latest. Hi again! Yes, I agree that svn editor needs quite a bit of effort. I was actually encouraged to break this challenge, and made my own svnup based on svndiff. If you are interested in details, you may find it on github.com under mkushnir/mrksvnup. It's a complete app, although you may use or re-use (parts of) it if you want. I also tested your svnup more and found that it doesn't handle symbolic links well. (May be you have already been aware of it.) I would suggest to test svnup against official svn client. Here is briefly what I'm doing to test my own svnup: # svn co -r NNNNNN svn://svn.freebsd.org/base/head head.svn # svnup -u svn://svn.freebsd.org/base/head -r NNNNNN -l head.svnup # diff -r head.svnup/ head.svn | egrep -v 'FreeBSD|\-\-\-|^diff \-r|^[0-9]+c[0-9]+' The diff output must be clean. -- Markiyan. > _______________________________________________ > 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"