Switch ServerManager to Broken state immediately when o.f.Akonadi.Control.Lock service disappears

Review Request #117144 - Created March 28, 2014 and submitted

Daniel Vrátil
When Akonadi is unable to start (because it can't start the DB process for example), it will terminate immediately. The current implementation of ServerManager has a 30 seconds timeout before it goes to 'Broken' state.

This patch adds a new check that will switch to Broken state immediately when org.freedesktop.Akonadi.Control.Lock disappears from bus. This service is owned by akonadi_control and when akonadi_control quits, it can only be because Akonadi has stopped (== failed to start), so when this happens in "Startup" state, we can safely assume, that Akonadi failed to start and we should go to Broken state.
Stopped Akonadi, broke it (so that it does not start), started KMail, got "Akonadi is inoperational" immediately instead of 30 seconds of "Starting up the PIM service...".
Christian Mollekopf
Commit Hook
This review has been submitted with commit c94b74eaf747150e5f5c1a6f53f5a995569102da by Dan Vrátil to branch KDE/4.13.
Daniel Vrátil
Review request changed

Status: Closed (submitted)