Bug 1041195

Summary: [RFE][nova]: Instead of exposing raw green threads, hide them.
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/nova/+spec/hide-greenthreads
Whiteboard: upstream_milestone_none upstream_status_slow-progress upstream_definition_drafting
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 17:34:17 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description RHOS Integration 2013-12-12 13:54:20 UTC
Cloned from launchpad blueprint https://blueprints.launchpad.net/nova/+spec/hide-greenthreads.

Description:

Currently there are places in nova which expose and use the greenthread code directly for various reasons. It would be nice to move to a more abstracted model where the greenthread implementation is only exposed in 'utils.py' and everything else uses modules/code there instead of using greenthread directly. This seems to be the case for other usage of greenthread (due to code like FixedIntervalLoopingCall and such) so it seems like we can work on cleaning up other usage of greenthread directly in a similar manner.

This will aid the transition off of greenthreads if it ever becomes needed by having a single point where all greenthread usage is occurring, instead of having it scattered all over, which makes changes hard, and verification of correctness hard as well when X different usages exist in Y different places in nova instead of just X usages with 1 primary location.

Specification URL (additional information):

None