[NetApp] Fix share replica failing for 'transfer in progress' error
This patch fix an issue in NetApp driver share replica periodic
check that erroneuouly set a share replica to error after receiving
a 'Another transfer is in progress' error. The driver now skips the
resync operation for all expected transfer in progress relationship
status.
Closes-Bug: #1848889
Change-Id: If82aaa184db84660389f82654279f3c5b238fd51
(cherry picked from commit 572be43bb0
)
This commit is contained in:
parent
678ea79f85
commit
cc2dea14a5
|
@ -1572,9 +1572,12 @@ class NetAppCmodeFileStorageLibrary(object):
|
|||
return constants.REPLICA_STATE_OUT_OF_SYNC
|
||||
|
||||
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
|
||||
snapmirror.get('relationship-status') == 'transferring'):
|
||||
snapmirror.get('relationship-status') in in_progress_status):
|
||||
return constants.REPLICA_STATE_OUT_OF_SYNC
|
||||
|
||||
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