Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

Upstart can currently emit an event when all jobs are either running or waiting, known as the idle event. This specification proposes removing that feature.

Rationale

This feature was added to permit the shutdown sequence to work, which requires multiple events issued in series with each other. The system becoming "idle" was the only method to determine that one of the events had been handled, so we could issue the next. The EventCompletion specification provides a much better method of doing this.

Scope

This scope of this specification is limited to the removal of the idle event, it does not propose its replacement; nor does it propose the removal of the "stalled" event which has other uses.

Design

Implementation

Code

Changes are largely limited to init/job.c. The job_set_idle_event function will be removed; the job_detect_idle function will be renamed to job_detect_stalled and only detect that condition.

Data preservation and migration

These changes must be made once the shutdown sequence has been modified to use an alternative method of serialisation.


CategorySpec

RemoveIdleEvent (last edited 2011-08-26 04:10:16 by localhost)