[Pkg-utopia-maintainers] Bug#495257: dbus: System bus must not be restarted during package upgrades
sam at robots.org.uk
Fri Aug 22 18:27:04 UTC 2008
On Tue, 19 Aug 2008 15:13:14 +1000, Tyson Clugg wrote:
> First up, I'm not a DBus daemon developer.
> I disagree that the DBus daemon should never be restarted because the
> NetworkManager developers say so. This is a step towards the "dark
> side" - rebooting your box after performing an upgrade is the M$ way of
> doing things. Solid engineering can prevent this.
While I agree with this--it's not just the NetworkManager developers who
say so. It's the upstream of dbus itself that says that, in its current
state, the system is not designed to survive a restart of the system bus.
On the upstream bug about this, a plan has been proposed to migrate
clients over to a way of connecting to the bus that will let them
sensibly set up and tear down resources associated with a connection--
basically applications will get an 'on connected' and 'on disconnected'
signal to hook into--but this won't happen in time for lenny.
> I have no idea if the following is possible, but it may be a good start
> to solving the DBus upgrade/restart puzzle:
> 1. Start new DBus daemon on a new socket:
> 2. Connect to the old socket and start proxying messages between the 2
> 3. Move the new socket over the top of the old socket:
> mv /var/run/dbus/system_bus_socket.new /var/run/dbus/system_bus_socket
> 4. Send message to the old daemon to force disconnection of all clients
> which should reconnect to the new daemon, once all clients disconnected
> then the old daemon shuts down.
It's a nice idea. The issue I see is with clients that are run after the
dbus package is upgraded needing to talk to those run before it was
upgraded. Also there is the case where dbus is upgraded multiple times
Given the current release situation, I think we should just not restart
the bus for now.
PGP key id 1024D/5EA01078
3412 EA18 1277 354B 991B C869 B219 7FDB 5EA0 1078
More information about the Pkg-utopia-maintainers