[ANN] bzr.webdav: a writable hhtp transport
Vincent LADEUIL
v.ladeuil at alplog.fr
Tue Aug 22 16:48:10 BST 2006
>>>>> "jam" == John Arbash Meinel <john at arbash-meinel.com> writes:
jam> Vincent LADEUIL wrote:
>> Hi all,
>>
>> https://launchpad.net/products/bzr.webdav
>>
>> is a plugin which implements the DAV protocol client part
>> (well, the part needed for bzr at least).
>>
>> Its performances are horrible, bzr have recently switched
>> to the append-to-update approach which means that each
>> time a file is updated it should be downloaded, updated
>> locally, uploaded.
jam> Well, the old format *always* had to do 'download,
jam> update, and upload'. The new format doesn't, so on all
jam> transports that support it, we can save the download &
jam> update time. That is why we switched, because Weave
jam> performance is very slow precisely because of these
jam> download+update+upload steps.
Yes I understood that, I hope you didn't take my remark too
seriously, it was not meant to harm anybody. It's just that when
I realized, during the implementation, that the resulting
performances will so far away comparing to bzr that I feel quite
bad for a moment :-)
jam> Probably we could do some alternative optimizations for
jam> transports that don't support append. For example, we
jam> would have already downloaded all of the knit index, so
jam> we know how to update it, rather than downloading the
jam> whole thing again.
I was thinking about caching locally every file passing the
'get', but :
- I'm not sure I can miss some bits,
- I'm not sure you already have some caching implemented that I
can reuse,
- I was willing to make it work before making it fast.
jam> But the expensive one is the knit data file, and that we
jam> haven't downloaded yet.
jam> I'm pretty sure we are reasonably good about only doing
jam> 1 update per knit file. Because even doing N appends to
jam> the same file is a lot slower than doing 1 append of
jam> length N.
jam> Does WebDAV not have any sort of Append command?
Don't hold your breath. I don't have the reference handy, but a
draft exists (dated 07/2006), proposing APPEND and PATCH
additions to DAV.
Ha ! I know I had pasted it somewhere in the code:
www.ietf.org/internet-drafts/draft-suma-append-patch-00.txt
>> This plugin was born today (well, last week), give it some
>> time to mature. If you care about your data, make backups.
>>
>> Still reading ? Ok, the good news then.
>>
>> The good news is that the performances can hardly be worse
>> and that there is some solutions to improve them.
>>
>> The other good news is that it has been tested on DAV
>> enabled Apache 1.x and 2.x and comes with a transport test
>> server that is able to pass the 'bzr selftest' (minus two
>> tests: lock_write and copy_to for which I need some
>> lights).
jam> If you want more interactive help, I'm usually available
jam> on irc during US work hours, and there are usually
jam> others their as well.
See you there tomorrow then.
>> The intent of this plugin is to offer a solution to
>> people who are behind firewalls (the real hard to get
>> through variety) or those who can't install a smart
>> server.
>>
>> Enough hype.
>>
>> I welcome any kind of remark on any subject (well,
>> somewhat related to the plugin).
jam> Just as good natured poke, you used 'hhtp' again in the
jam> title :)
lol, I should teach my ispelll about that one...
>> Happy reading, reviewing, testing,
>>
>> Vincent
jam> I'm downloading now, I'll let you know if I see
jam> anything.
Thanks in advance,
Vincent
More information about the bazaar
mailing list