From c0a5dd0edaecbb8f046971cb112cdc09fd348b3c Mon Sep 17 00:00:00 2001 From: Steve Lewis Date: Tue, 7 Mar 2017 15:38:26 -0800 Subject: [PATCH] Introduce Glance Taskflow stopfile feature Add lite-spec for a stopfile feature to prevent task processing. The feature should operate similarly to existing code within OpenStack. Change-Id: I1ee3904a37adbbc700eecbbe131e53694eb17903 --- specs/pike/approved/glance/lite-specs.rst | 32 +++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/specs/pike/approved/glance/lite-specs.rst b/specs/pike/approved/glance/lite-specs.rst index 6c98d613..9c3816d8 100644 --- a/specs/pike/approved/glance/lite-specs.rst +++ b/specs/pike/approved/glance/lite-specs.rst @@ -133,5 +133,37 @@ Introduce db sync --check feature End of `Introduce db sync --check feature` ++++++++++++++++++++++++++++++++++++++++++ +Introduce Glance Taskflow stopfile feature +------------------------------------------ + +:problem: When preparing to take a Glance node down for maintenance or upgrade + it is necessary to allow long-running operations to complete without + allowing new operations to begin. The Taskflow engine does not have + the capability to prevent individual executors from starting new + jobs, and so attempting to take a Glance node out of the Taskflow + processing pool risks a race condition with that executor starting a + job just before the service is terminated which could cause the Task + processing to fail. + +:solution: Introduce a disable_by_file_path feature to Glance Taskflow which + will prevent the node from picking up new jobs. This allows an + operator or automation engine to ``touch`` the appropriate file + before terminating the service. This feature should depend on the + oslo healthcheck middleware configuration to disable the taskflow + engine. As an additional impact, this work will require Glance to + instantiate a single taskflow engine as a singleton and reuse that + engine instance on all subsequent taskflow operations. + +:impacts: None + +:timeline: Expected to have a fix merged in the Pike cycle before milestone 2. + +:link: https://docs.openstack.org/developer/oslo.middleware/healthcheck_plugins.html + +:assignee: Unknown + +End of `Introduce Glance Taskflow stopfile feature` ++++++++++++++++++++++++++++++++++++++++++++++++++++ + Add your Spec Lite before this line ===================================