monotone-devel
[Top][All Lists]
Advanced

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

Re: [Monotone-devel] usher


From: Timothy Brownawell
Subject: Re: [Monotone-devel] usher
Date: Tue, 13 Apr 2010 21:44:03 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100411 Icedove/3.0.4

On 04/13/2010 07:12 PM, Thomas Keller wrote:

Hi!

I know usher is around for quite a long time now, but I just started
playing with it tonight. One thing I don't quite get is how instance
separation based on pattern matching is supposed to work - imagine you
have these two different setups

server          "project-1"
pattern         "com.project-1"
local           "-d" "/path/to/project-1.mtn"

server          "project-2"
pattern         "com.project-2"
local           "-d" "/path/to/project-2.mtn"

What happens if somebody pulls or pushes changes with "com.project*" or
some other wildcard-using pattern to the server? Would this fail because
neither server would be able to respond? What would happen for a pattern
like "{com.project-1,com.project-2}"?

Both would fail. It looks for servers where the server pattern is an initial substring of the client's include pattern, and IIRC uses the matching one with the longest pattern in the case of multiple matches.

What is the status of usher currently anyways? I haven't seen an
official release of it (no tags at least), but it seems to be proven
stable over the last couple of years. If there would be an offical
release, packagers would be able to pick it up easier and could provide
it as tool on top of monotone.

I use a slightly modified version for mtn-host.prjek.net (it gets the list of servers by listing a directory instead of directly from a config file), and it seems to work well enough. This also uses only the hostname to select which server to use, like if you were to only specify "host" and not "pattern" line in the config file.

The pattern-based dispatch really should be more intelligent I guess, expand all the braces and make sure all the parts match the same server (and just make for example having "com" on one server and "com.project" on another be a config error). I suppose this isn't that big a deal, might as well just tag current head as a release I guess?

--
Timothy

Free public monotone hosting: http://mtn-host.prjek.net




reply via email to

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