Async tasks, image import not supported in pure-WSGI mode
Bug #1888713 reported by
Dan Smith
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Glance |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The wsgi_app.py file in the tree allows operators to run Glance API as a proper WSGI app. This has been the default devstack deployment for some time and multiple real clouds in the wild deploy like this. However, an attempt to start an import will be met with an image state of "queued" forever and no tasks will ever start, run, or complete.
(note that this has been a known issue and the Glance team prescribes running standalone eventlet-based glance-api for deployments that need import to work).
To post a comment you must log in.
Reviewed: https:/ /review. opendev. org/742065 /git.openstack. org/cgit/ openstack/ glance/ commit/ ?id=16a5431c665 adadbfcb9909cf3 a73334d796c19a
Committed: https:/
Submitter: Zuul
Branch: master
commit 16a5431c665adad bfcb9909cf3a733 34d796c19a
Author: Dan Smith <email address hidden>
Date: Mon Jul 20 20:49:34 2020 -0700
Make glance-api able to do async tasks in WSGI mode
This teaches glance-api how to do async threading things when it is
running in pure-WSGI mode. In order to do that, a refactoring of things
that currently depend on eventlet is required.
It adds a [wsgi]/ task_pool_ threads configuration knob, which is used
in the case of pure-WSGI and native threads to constrain the number
of threads in that pool (and thus the task parallelism). This will
allow tuning by the operator, but also lets us default that to just
a single thread in the backport of these fixes so that we can avoid
introducing a new larger footprint in the backport unexpectedly.
Partial-Bug: #1888713 /review. opendev. org/#/c/ 742047/ 8ec2b0c0c0386d2 1782166f759
Depends-On: https:/
Change-Id: Ie15028b75fb851