Merge "[NetApp] Fix share replica failing for 'transfer in progress' error" into stable/queens
This commit is contained in:
commit
d5df8e9772
|
@ -1542,9 +1542,12 @@ class NetAppCmodeFileStorageLibrary(object):
|
||||||
return constants.REPLICA_STATE_OUT_OF_SYNC
|
return constants.REPLICA_STATE_OUT_OF_SYNC
|
||||||
|
|
||||||
snapmirror = snapmirrors[0]
|
snapmirror = snapmirrors[0]
|
||||||
|
# NOTE(dviroel): Don't try to resume or resync a SnapMirror that has
|
||||||
|
# one of the in progress transfer states, because the storage will
|
||||||
|
# answer with an error.
|
||||||
|
in_progress_status = ['preparing', 'transferring', 'finalizing']
|
||||||
if (snapmirror.get('mirror-state') != 'snapmirrored' and
|
if (snapmirror.get('mirror-state') != 'snapmirrored' and
|
||||||
snapmirror.get('relationship-status') == 'transferring'):
|
snapmirror.get('relationship-status') in in_progress_status):
|
||||||
return constants.REPLICA_STATE_OUT_OF_SYNC
|
return constants.REPLICA_STATE_OUT_OF_SYNC
|
||||||
|
|
||||||
if snapmirror.get('mirror-state') != 'snapmirrored':
|
if snapmirror.get('mirror-state') != 'snapmirrored':
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
fixes:
|
||||||
|
- |
|
||||||
|
Fixed an issue in NetApp driver share replica periodic check that
|
||||||
|
erroneously set a replica state to 'error'. In this routine, a SnapMirror
|
||||||
|
resync operation was being triggered while the replica data transfering is
|
||||||
|
still in progress, receiving an error from the storage side. The driver now
|
||||||
|
skips resync operation for all in progress SnapMirror relationship status.
|
||||||
|
|
Loading…
Reference in New Issue