HUP handling: a thought

Nicolas Baradakis nbk at sitadelle.com
Sun May 6 19:34:40 CEST 2007


Alan DeKok wrote:

> Nicolas Baradakis wrote:
> > I like when the things are simple: edit the config files with your
> > favorite editor, and run a command to reload the server. (kill -HUP
> > or something else)
> 
>   It's nice, but can result in ~1s hiccups when everything gets
> reloaded. [...]

Indeed. At some point we need to make a tradeoff between a solution
that is simple for the administrator but not very efficient, and
a complex configuration mechanism that allow extensive control on
a running server. (personally I tend to prefer the former solution)

> > Translating plain text files to SQL has a few issues issues, too. When
> > you update a value on a running server, its runtime config is out of
> > sync with its config files. Therefore I don't know how we could make
> > sure that the "humanly readable" version is relevant or not.
> 
>   The "RTA" program I originally pointed to does this by dumping SQL
> commands to a file.  When the file is read in, it re-creates the running
> configuration.  See also Mercurial's "revlog" format for how to do
> high-performance, safe logging of a changing configuration.

The program will be able to store its configuration and restart with
the same parameters. But I think the file that is dumped isn't in a
humanly readable format. Therefore if the administrator wants to see
what the running server is actually doing, he may have to run a few
SQL queries.

>   But if all you're doing is adding one realm... why the heck do you
> want to reload the other 3000 realms   to add just one?  That doesn't
> make sense.  It's an O(N^2) solution to a problem that should be O(1).

I agree. But large sites should have multiple servers, therefore
perhaps they could address the issue differently.

-- 
Nicolas Baradakis




More information about the Freeradius-Devel mailing list