[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Monotone-devel] Time to create a monotone cluster?
From: |
Timothy Brownawell |
Subject: |
Re: [Monotone-devel] Time to create a monotone cluster? |
Date: |
Sat, 31 Mar 2007 11:18:47 -0500 |
On Sat, 2007-03-31 at 15:12 +0800, Grahame Bowland wrote:
> I can easily enough start running a public monotone server, but
> there's one catch - can anyone think of a solution?
>
> I've got viewmtn running, and a number of long-lived mtn processes
> reading from the database. I've recently modified viewmtn to notice
> when the db file mtime changes and restart the mtn processes.
>
> The trouble is updates; these lock the database, and the readers can't
> access it. People start getting error pages when accessing the web
> page. What I'm currently doing is:
> - copy the database file to a temporary file
> - pull into that file
> - do a atomic rename() to replace the old database file
>
> This is quite transparent to any running mtn processes, as they just
> keep using the old database until stopped. However, it's slow and more
> than a little crude - and it will suck horribly when trying to deal
> with regular updates.
>
> I can't think of a better solution short of some sort of union
> filesystem that allows me to have the temporrary db file be based upon
> the original, removing the slowness of the copy. That could work, but
> it's still pretty horrible for anyone else wanting to run a viewmtn
> server..
I can't think of any other immediate solutions, but a longer-term
solution (that I've been kinda-sorta working on for a while now) would
be to have 'mtn serve' also serve automate stdio over network
connections.
--
Timothy
Free (experimental) public monotone hosting: http://mtn-host.prjek.net