1 |
On Tue, Aug 23, 2011 at 3:08 PM, Michael Mol <mikemol@×××××.com> wrote: |
2 |
> On Tue, Aug 23, 2011 at 2:57 PM, Canek Peláez Valdés <caneko@×××××.com> wrote: |
3 |
>> On Tue, Aug 23, 2011 at 2:35 PM, Michael Mol <mikemol@×××××.com> wrote: |
4 |
>>> On Tue, Aug 23, 2011 at 1:49 PM, Canek Peláez Valdés <caneko@×××××.com> wrote: |
5 |
>>>> On Tue, Aug 23, 2011 at 1:17 PM, Stroller |
6 |
>>>>> Reading that blog entry I found discouraging the idea that dbus might be required on my servers in the future, if systemd becomes popular with distros. |
7 |
>>>> |
8 |
>>>> I don't see the problem with D-Bus. It's small (the only hard |
9 |
>>>> dependency it has is an XML parser), and it provides the Linux/UNIX |
10 |
>>>> (de facto) standard interprocess communication system. |
11 |
>>> |
12 |
>>> My chief gripe with D-Bus is that I've had X sessions disappear out |
13 |
>>> from under me as a consequence of the daemon being restarted. Having a |
14 |
>>> single point of failure like that is very, very scary. Otherwise, I |
15 |
>>> like what it tries to do. |
16 |
>> |
17 |
>> Restarting or dying? If it's dying, it's a bug and should be reported. |
18 |
>> I haven't had a crash in dbus in years, and I think pretty much |
19 |
>> everyone agrees it's pretty stable nowadays. It even tries to handle |
20 |
>> gracefully thins like out-of-memory errors and things like that. |
21 |
> |
22 |
> I have no doubt a stellar amount of work has been done to gracefully |
23 |
> handle problem scenarios. |
24 |
> |
25 |
>> |
26 |
>> If it's restarting, why on earth will someone restart the system bus |
27 |
>> with active X sessions? If the dbus daemon is restarted, it has to |
28 |
>> kick all the apps from the bus, including the session manager. |
29 |
> |
30 |
> Because I generally update my desktop system while running X, and on |
31 |
> at least two occasions, an update killed my X session by restarting |
32 |
> DBUS on me |
33 |
|
34 |
The update don't restart D-Bus: from the dbus-1.4.14 ebuild: |
35 |
|
36 |
elog "To start the D-Bus system-wide messagebus by default" |
37 |
elog "you should add it to the default runlevel :" |
38 |
elog "\`rc-update add dbus default\`" |
39 |
elog |
40 |
elog "Some applications require a session bus in addition to the system" |
41 |
elog "bus. Please see \`man dbus-launch\` for more information." |
42 |
elog |
43 |
ewarn "You must restart D-Bus \`/etc/init.d/dbus restart\` to run" |
44 |
ewarn "the new version of the daemon." |
45 |
ewarn "Don't do this while X is running because it will restart your X as well." |
46 |
|
47 |
Emphasising: "Don't do this while X is running because it will restart |
48 |
your X as well." So I will assume something went terribly wrong when |
49 |
updating, and again, if that's the case then it's a bug and should be |
50 |
reported. |
51 |
|
52 |
> On the other hand, sshd handles restarts without killing active sessions. |
53 |
|
54 |
Because the daemon state for sshd is tiny compared with the one from |
55 |
D-Bus. Apples and oranges. |
56 |
|
57 |
> These are solvable problems which DBUS hasn't solved yet for itself. |
58 |
> High-availability is one of the best-researched fields in computer |
59 |
> science, but DBUS doesn't handle that case, yet. |
60 |
|
61 |
Because it's not as easy as with systemd (which can also reexecute |
62 |
preserving state) or ssh. The state that D-Bus handles can be really, |
63 |
really big, because is a *generic* IPC. Not like Secure Shell, which |
64 |
only handles one type of session and a very limited set of messages. |
65 |
|
66 |
Regards. |
67 |
-- |
68 |
Canek Peláez Valdés |
69 |
Posgrado en Ciencia e Ingeniería de la Computación |
70 |
Universidad Nacional Autónoma de México |