subversion-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philip Martin <phi...@codematters.co.uk>
Subject Re: Proposal: new fsfs.conf properties
Date Thu, 13 Jul 2017 11:48:43 GMT
Philip Martin <philip@codematters.co.uk> writes:

> The fact that the create is faster than the update means that if
> uploading the data is the only thing that matters then breaking the
> history and changing the update into a delete+recreate is faster, i.e.
>
>   svnmucc -mm -U http://localhost/repo put u1.dat svn.dat
>   svnmucc -mm -U http://localhost/repo rm svn.dat put u2.dat svn.dat
>   svnmucc -mm -U http://localhost/repo rm svn.dat put u3.dat svn.dat
>
> The delete+recreate takes the same 5.2s as the original create and is
> faster than curl's 6.7s update.

Even faster is to use curl to talk DAV:

  curl -XPOST -H 'Content-Type: application/vnd.svn-skel' -d @post.txt \
    'http://localhost/repo/!svn/me'
  curl -XDELETE 'http://localhost/repo/!svn/txr/1-1/svn.dat'
  curl -T u2.dat 'http://localhost/repo/!svn/txr/1-1/svn.dat'
  curl -XMERGE -d @merge.txt http://localhost/repo

which takes 4.3s, more or less the same as the 4.2s curl create.

Note I have cheated here: I knew the txn name in advance while a real
implementation would need to parse the POST response and adjust the
subsequent requests.

svnmucc is implemented on top of the delta editor, I don't know how easy
it would be to get it to send a plain PUT rather than a delta.

-- 
Philip

Mime
View raw message