oafd lifecycle



Hi,

We have a problem with "lingering oafd" at the moment. Imagine a large
multiuser system; you'll quickly have 300 oafd floating around.

gconfd exits after a timeout of 5 minutes or something if it has no
active clients. The timeout is to avoid churn if I write a loop that 
uses gconfd, and I'm the only client.

For oafd I think we should exit immediately if there are no servers
oafd knows about. A timeout should not be needed, since I don't think
it would be typical to get/release a single server over and over.  If
there is a timeout it should likely be short, maybe 1 minute or so.
(The gconfd timeout is probably too long at the moment.)

Does that sound fine to everyone?

The other really pressing oafd issue is that it appears to die with
your session. Elliot thinks we may not properly detach from the
process group. So I'm going to try to fix that. As things currently
stand, if you log out then all servers OAF knows about get leaked (so
you end up with multiple gconfd, for example, resulting in tons of
GConf errors).

If anyone knows other reasons it might die with the session let me
know. Basically if oafd goes down while it has active servers, the
whole CORBA/Bonobo subsystem is completely hosed, which means the
whole desktop is completely hosed (especially in GNOME 2). GConf is
getting to pioneer the pain here, but it has to get fixed for the
desktop in general.

oafd has to be the most rock-solid thing we have ever seen, losing
oafd is going to be just as bad as losing gnome-session with GNOME 2.

Havoc




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