OpenStack Block Storage (Cinder)
Go to file
Gorka Eguileor 173d4d0a46 Run backup compression on native thread
Backup data compression is a CPU bound operation that will not yield to
other greenthreads, so given enough simultaneous backup operations they
will lead to other threads' starvation.

This is really problematic for DB connections, since starvation will
lead to connections getting dropped with errors such as "Lost connection
to MySQL server during query".

Detailed information on why these connections get dropped can be found
in comment "[31 Aug 2007 9:21] Magnus Blåudd" on this MySQL bug [1].

These DB issues may result in backups unnecessary ending in an "error"
state.

This patch fixes this by moving the compression to a native thread so
the cooperative multitasking in Cinder Backup can continue switching
threads.

[1] https://bugs.mysql.com/bug.php?id=28359

Closes-Bug: #1692775
Closes-Bug: #1719580
Change-Id: I1946dc0ad9cb7a68072a39816fa9fa224c2eb6a5
(cherry picked from commit af0f00bc52)
(cherry picked from commit 439f90da8e)
2018-04-11 14:43:18 -05:00
api-ref/source Merge "[api-ref]Add volumes/summary API doc" 2017-02-05 22:26:59 +00:00
cinder Run backup compression on native thread 2018-04-11 14:43:18 -05:00
doc Prepare for using standard python tests 2017-02-07 06:48:13 +01:00
etc/cinder Adds missing entries for Quobyte driver to rootwrap 2017-07-31 15:04:00 +02:00
rally-jobs Disable Rally backup-related scenarios 2016-02-15 20:44:52 +02:00
releasenotes Dell EMC PS: Fix extend volume creating unmanaged snapsots 2018-04-11 14:43:18 -05:00
tools Prepare for using standard python tests 2017-02-07 06:48:13 +01:00
.coveragerc Update .coveragerc after the removal of openstack directory 2016-10-17 19:09:37 +05:30
.gitignore Add driver list to doc build 2016-07-26 11:09:05 -05:00
.gitreview Update .gitreview for stable/ocata 2017-02-06 23:32:48 +00:00
.testr.conf Move integrated tests to 'functional' directory 2016-02-09 23:28:27 +02:00
CONTRIBUTING.rst Update CONTRIBUTING.md to CONTRIBUTING.rst 2015-11-10 23:10:38 +08:00
HACKING.rst Hacking: Remove N333 oslo namespace import check 2016-12-12 10:08:31 -05:00
LICENSE Initial fork out of Nova. 2012-05-03 10:48:26 -07:00
README.rst Show team and repo badges on README 2016-11-25 13:39:11 +01:00
babel.cfg Initial fork out of Nova. 2012-05-03 10:48:26 -07:00
pylintrc Use six to fix imports on Python 3 2015-06-11 17:19:19 +02:00
requirements.txt Updated from global requirements 2017-05-15 23:29:29 +00:00
setup.cfg Removing cinder-all binary 2016-10-02 15:46:57 -07:00
setup.py Updated from global requirements 2015-09-18 16:37:17 +00:00
test-requirements.txt Add psycopg2 and PyMySQL to test-requirements 2016-12-26 17:50:55 +02:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/ocata 2017-02-06 23:32:49 +00:00

README.rst

Team and repository tags

image

CINDER

You have come across a storage service for an open cloud computing service. It has identified itself as Cinder. It was abstracted from the Nova project.

Getting Started

If you'd like to run from the master branch, you can clone the git repo:

git clone https://git.openstack.org/openstack/cinder.git

For developer information please see HACKING.rst

You can raise bugs here http://bugs.launchpad.net/cinder

Python client

https://git.openstack.org/cgit/openstack/python-cinderclient