[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] nuskool status update

From: Derek Scherger
Subject: [Monotone-devel] nuskool status update
Date: Mon, 28 Apr 2008 22:31:22 -0600
User-agent: Thunderbird (X11/20080303)

I noticed someone wondering about the status of the nuskool branch today so here's a quick update.

In a nutshell it "sorta" works as far as requesting and transferring revisions is concerned. It does not attempt to synchronize keys or certs which is obviously a bit of a problem and I'm not sure how we should deal with certs.

There is a problem with interrupting a sync and then restarting it at the moment. Any part of the revision graph that starts from the null revision [] will be excluded unless some part of it was previously included. The fix might be as simple as always including the null revision in the frontier set.

The code is very simple and should be easy to understand though, so picking it up probably involves an hour or two of reading it over to get started.

I have a few different uncommitted experimental changes kicking around:

1. interleaved http requests - I was hoping to help http sync go faster by interleaving requests issued from the client and processing responses from the server. The basic idea is to send a request for a full revision, then store the response to the previous request before waiting for a response to the current request so that both sides can be doing useful work rather then operating completely synchronously. This didn't seem to make much difference which surprised me a bit so I haven't committed it. If anyone is interested let me know and I'll dust it off and commit it.

2. direct http connections - This is a relatively simple change to allow a nuskool client to talk directly to a server without requiring an scgi speaking webserver in the middle. There seem to be some problems with repeatedly connecting/disconnecting to a server that I haven't tracked down yet. Only the first few requests succeed and then the server stops accepting connections. I wonder whether this could be a problem in netxx related to setting the socket backlog size or something.

3. binary roster delta format - This is not really related to the nuskool branch but something that has been talked about a bit. This replaces the basic_io representation of roster deltas and replaces it with a more raw binary format. Again this didn't turn out to be much of a speed win but the replacement code is a bit nicer than the basic_io equivalent.

Yes, I know, I should probably be committing these things. ;)

I'll try to be around on IRC when I can. Have fun at the summit.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]