]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commit
Allow replicated volumes to be recoverable
authorMudassir Latif <mudassir.latif@purestorage.com>
Wed, 2 Sep 2015 22:07:04 +0000 (15:07 -0700)
committerMudassir Latif <mudassir.latif@purestorage.com>
Tue, 22 Dec 2015 15:36:11 +0000 (07:36 -0800)
commit519175176032e6c45149b7e234b035ad2f2e9abb
tree65268018ff932235a17fec7e94db58ad6379716e
parentac7ae7eed66118560e2b18817c94473d6d505cea
Allow replicated volumes to be recoverable

Currently, once they are in ‘error’ or ‘failed-over’ states you can’t
do anything with them. We need to allow enable_replication after the
admin has resolved any issues that may have prevented the operation.

Same thing for after a fail-over, you cannot enable replication on it.

This change allows for more states to be recoverable via enable
replication. It also more uniformly sets the state to ‘error’ when
something bad happens.

'enabled' --> replication is on.
'disabled' --> replication is off by design.
'failed-over' --> we have just failed over. Replication is off.
'error' --> an error occurred during the last operation.

allowed flow is:
'enabled' --> 'failed-over'/'disabled'/'error'
'error' --> 'enabled'/'error'
'disabled' --> 'enabled'/'error'
'failed-over' --> 'enabled'/'error'

Change-Id: Icbc22b8501b048b1755019305430177ba0a9385f
Partial-Bug: #1491631
cinder/tests/unit/test_replication.py
cinder/volume/api.py
cinder/volume/driver.py
cinder/volume/manager.py
doc/source/devref/replication.rst