commit c726948f17c948a5307bbb7241f4b4e1f85f1d23
Author: Alexander Gordeev <email address hidden>
Date: Wed Feb 3 19:17:29 2016 +0300
Handle SIGTERM to shut down gracefully
Apparently, fuel-agent doesn't handle any signal received except for SIGINT
which is automatically converted by python to KeyboardInterrupt() exception.
fuel-agent is unable to send signal for spawned processes, just because
utils.execute doesn't know PIDs of opened subprocessess. To mitigate that flaw,
fuel-agent will use process group to distribute signals.
Process groups are used to control the distribution of signals.
A signal directed to a process group is delivered individually to all of the
processes that are members of the group.
That allows fuel-agent to send signals to subprocesses without knowing thier
exact PIDs.
Reviewed: https:/ /review. openstack. org/275820 /git.openstack. org/cgit/ openstack/ fuel-agent/ commit/ ?id=c726948f17c 948a5307bbb7241 f4b4e1f85f1d23
Committed: https:/
Submitter: Jenkins
Branch: master
commit c726948f17c948a 5307bbb7241f4b4 e1f85f1d23
Author: Alexander Gordeev <email address hidden>
Date: Wed Feb 3 19:17:29 2016 +0300
Handle SIGTERM to shut down gracefully
Apparently, fuel-agent doesn't handle any signal received except for SIGINT
which is automatically converted by python to KeyboardInterrupt() exception.
fuel-agent is unable to send signal for spawned processes, just because
utils.execute doesn't know PIDs of opened subprocessess. To mitigate that flaw,
fuel-agent will use process group to distribute signals.
Process groups are used to control the distribution of signals.
A signal directed to a process group is delivered individually to all of the
processes that are members of the group.
That allows fuel-agent to send signals to subprocesses without knowing thier
exact PIDs.
Change-Id: Ie59c0425f031fa 94e517b79df0a0f c3d0c3e7a07
Related-Bug: #1538645