If the iSCSI connection to a device goes down right after we flush it, or if one of the paths of a multipath device goes down right before we start disconnecting, the detach will fail even though it should succeed. We'll see a VolumePathNotRemoved exception listing volumes that had not disappeared. This happens because, under those circumstances, it may take up to 30 seconds for the SCSI device to be removed from /dev, but expect it to disappear in 6 seconds (first check happens, immediately, then another in 2 seconds, and another in 4 seconds). Since the device will be removed if we wait a bit more, this patch makes it so that we wait for up to 30 seconds for the removal. To ensure we wait as little time as possible, we change the way we wait for the devices to be removed. Instead of checking, sleeping for 2 and then for 4 seconds, and then checking again, we just sleep 500ms between checks, and we do the DEBUG log every 5 seconds. Change-Id: If801dfc2462c0d3f986eebd4108087139934610d Closes-Bug: #1794829 (cherry-picked from commit
|3 years ago|
|doc/source||4 years ago|
|etc/os-brick/rootwrap.d||6 years ago|
|os_brick||3 years ago|
|releasenotes||3 years ago|
|tools||4 years ago|
|.coveragerc||6 years ago|
|.gitignore||4 years ago|
|.gitreview||4 years ago|
|.mailmap||7 years ago|
|.stestr.conf||4 years ago|
|.zuul.yaml||3 years ago|
|CONTRIBUTING.rst||4 years ago|
|HACKING.rst||4 years ago|
|LICENSE||7 years ago|
|README.rst||4 years ago|
|babel.cfg||7 years ago|
|bindep.txt||4 years ago|
|pylintrc||6 years ago|
|requirements.txt||4 years ago|
|setup.cfg||4 years ago|
|setup.py||5 years ago|
|test-requirements.txt||4 years ago|
|tox.ini||4 years ago|
Team and repository tags
OpenStack Cinder brick library for managing local volume attaches
- Discovery of volumes being attached to a host for many transport protocols.
- Removal of volumes from a host.
Hacking on brick requires python-gdbm (for Debian derived distributions), Python 2.7 and Python 3.4. A recent tox is required, as is a recent virtualenv (13.1.0 or newer).
If "tox -e py34" fails with the error "db type could not be determined", remove the .testrepository/ directory and then run "tox -e py34".
- For any other information, refer to the developer documents:
- OR refer to the parent project, Cinder: