Bug 1391489 - Service graceful shutdown not working
Summary: Service graceful shutdown not working
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: RDO
Classification: Community
Component: openstack-cinder
Version: Mitaka
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: trunk
Assignee: Gorka Eguileor
QA Contact: nlevinki
URL:
Whiteboard:
Depends On: 1391484
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-11-03 12:30 UTC by Gorka Eguileor
Modified: 2017-06-22 15:30 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1391484
Environment:
Last Closed: 2017-06-22 15:30:54 UTC


Attachments (Terms of Use)

Description Gorka Eguileor 2016-11-03 12:30:05 UTC
+++ This bug was initially created as a clone of Bug #1391484 +++

Description of problem:

  When requesting the cinder-volume and the cinder-api services to stop they will not do a graceful shutdown as expected, instead they will be abruptly terminated.

  Scheduler and backup services do not have this issue.

Version-Release number of selected component (if applicable):

  This affects all versions since oslo service implemented graceful shutdown on v1.3.0.

How reproducible:
  It happens every time.

Steps to Reproduce:

- For the API:
  1. Slow down the attach process on the cinder-volume service (introducing a delay, this is only to be able to simulate the problem)
  2. Send the attach request
  3. systemctl stop openstack-cinder-api

- For the volume:
  1. Slow down the create process on the cinder-volume service (introducing a delay, this is only to be able to simulate the problem)
  2. Send the volume creation request
  3. systemctl stop openstack-cinder-volume

Actual results:
  Status of the resource is attaching or creating, depending on the operation.

Expected results:
  Status should be in-use or available, depending on the operation.

Additional info:
  The problem is that systemd.kill is sending the SIGTERM signal to all processes instead of just sending it to the main process and letting oslo.service propagate this signal to child processes.

  Since scheduler and backup don't have child processes they are safe.

Comment 1 Gorka Eguileor 2016-11-03 12:33:43 UTC
Proposed fix: http://review.rdoproject.org/r/3487

Comment 2 Gorka Eguileor 2016-11-03 12:46:57 UTC
Proposed fix on Comment 1 was for Newton, fix for master is: http://review.rdoproject.org/r/3489

Comment 3 Christopher Brown 2017-06-22 15:30:54 UTC
Change was merged so closing.


Note You need to log in before you can comment on or make changes to this bug.