f70bfbf711
The SolidFire driver retries API requests in case a connection error occurrs. When network is unstable, there may be the possibility that the SolidFire backend successfully receive and process a create volume operation, but fail to deliver the response back to the driver. When this scenario occurrs, the SolidFire driver automatically resends the request, creating a second volume and leaving a duplicate unused. Although this doesn't affect driver functionality at first moment (the volume id from the cluster is always correctly associated to cinder provider id), further operations may hit the unused volume, leading to unexpected hehavior. This patch fixes this issue by: 1. Checking if the volume name already exists in the backend before trying to create it. Volume creation will raise a exception and abort in case of a volume is found. 2. Checking for volume creation right after a read timeout is detected, preventing invalid API calls. 3. Adding option ´sf_volume_create_timeout´ to the SolidFire driver, to allow users to set the appropriate timeout value for their environment. Closes-Bug: #1896112 Change-Id: I4383b691a8cc4aacb046332e418aafb88ba8ba56 (cherry picked from commit |
||
---|---|---|
api-ref/source | ||
cinder | ||
contrib/block-box | ||
doc | ||
etc/cinder | ||
playbooks | ||
rally-jobs | ||
releasenotes | ||
tools | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.pylintrc | ||
.stestr.conf | ||
.zuul.yaml | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
babel.cfg | ||
bindep.txt | ||
driver-requirements.txt | ||
lower-constraints.txt | ||
reno.yaml | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Team and repository tags
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.
- Wiki: https://wiki.openstack.org/Cinder
- Developer docs: https://docs.openstack.org/cinder/latest/
- Blueprints: https://blueprints.launchpad.net/cinder
- Release notes: https://docs.openstack.org/releasenotes/cinder/
- Design specifications: https://specs.openstack.org/openstack/cinder-specs/
Getting Started
If you'd like to run from the master branch, you can clone the git repo:
git clone https://opendev.org/openstack/cinder
For developer information please see HACKING.rst
You can raise bugs here https://bugs.launchpad.net/cinder