Task #7708
Re-attempts of synchronization due to TransferObjectTask failures does not send SyncFailed to MN
100%
Description
The current code of V2TransferObjectTask will attempt to retry processing of a SyncObject task if a VersionMismatch exception is thrown.
After 5 attempts, the task will not be retried.
The number of retry attempts should be a configurable parameter and set as a global variable (get rid of it as a magic number).
The failure after 5 attempts should be reported back to the MN via a synchronization Failed message.
Associated revisions
refs: #7708. fixed VersionMismatch logic in processV1SystemMetadataUpdate
refs: #7708. fixed VersionMismatch logic in processV1SystemMetadataUpdate
History
#1 Updated by Rob Nahf over 8 years ago
V2TransferObjectTask should only rely on VersionMismatch for objects under v1 systemMetadata control (Tier3 v1 nodes). The new commits (by me) that refactored retry handling messed with the VersionMismatch logic and categorized it as unrecoverable.
I restored the retry behavior for this exception, but also got rid of the special number of retries for this situation. Retry logic was getting too complicated, and the number of attempts was not split out by type of retry-able failure, so it seems pointless to try to differentiate the number of attempts allowed for a given "last-failure" situation.
#2 Updated by Rob Nahf over 8 years ago
- Status changed from New to Closed
- % Done changed from 0 to 100
- translation missing: en.field_remaining_hours set to 0.0