improve stateful re-exec downgrade scenario

Bug #1256985 reported by James Hunt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
upstart
New
Wishlist
Unassigned

Bug Description

Upstart doesn't yet fully support the stateful re-exec downgrade scenario. One area that needs to be investigated is deserialising arrays (such as class->normalexit, job->fds, job->pid). Currently, if on downgrade the number elements is greater than that expected for the lower numbered version of upstart, the deserialisation code will re-allocate the array so that it is big enough. This is safe, but does mean that extraneous (and strictly inaccessible) data is maintained until the next boot.

It would be cleaner if Upstart truncated such arrays to the expected size on deserialisation.

Function state_deserialise_int_array() probably needs to change to be passed an expected length parameter such that it stops when that number of elements has been seen.

Revision history for this message
Steve Langasek (vorlon) wrote :

Stateful downgrading is not a significant use case for upstart and we should not spend any major effort on optimizing it. A minor memory leak when downgrading is a negligible problem.

Changed in upstart:
importance: Undecided → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.