Bug 1125099

Summary: [RFE][glance]: Proposal for using Launcher/ProcessLauncher for launching services
Product: Red Hat OpenStack Reporter: RHOS Integration <rhos-integ>
Component: RFEsAssignee: RHOS Maint <rhos-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: markmc, yeylon
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
URL: https://blueprints.launchpad.net/glance/+spec/use-common-service-framework
Whiteboard: upstream_milestone_none upstream_definition_superseded upstream_status_unknown
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 17:09:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description RHOS Integration 2014-07-31 04:07:03 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/glance/+spec/use-common-service-framework.

Description:

Currently other openstack projects like nova, cinder, keystone etc. are using oslo-incubator service framework to launch the services. Similar to these projects glance should also use this service framework to launch the services.

As of now when SIGHUP signal is sent to glance-api parent process, it calls the callback handler and then throws OSError. The OSError is thrown because os.wait system call was interrupted due to SIGHUP callback handler. As a result of this parent process closes the server socket. All the child processes also gets terminated without completing existing api requests because the server socket is already closed and the glance service fails to restart.

Ideally when SIGHUP signal is received by the glance-api process, it should process all the pending requests and then restart the glance-api service.

If oslo-incubator's common service framework is used in glance then it will handle service restart on ‘SIGHUP’ signal properly.

Specification URL (additional information):

None