Use isRetriableError instead of isNetworkError for transient errors in initial sync

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 4.3.3
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Fully Compatible
    • ALL
    • Repl 2020-01-13, Repl 2020-01-27
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      During initial sync, we may receive some error codes which are not network errors but should not cause an initial sync to fail permanently. Specifically, ShutdownInProgress (the sync source may restart normally), PrimarySteppedDown, ExceededTimeLimit, InterruptedAtShutdown, InterruptedDueToReplStateChange, and NotMasterOrSecondary. These (plus NotMasterNoSlaveOK and NotMaster, which we should not receive) are covered under the isRetriableError label.

      The catch is that NotMasterOrSecondary may be a permanent error. It indicates a sync source in startup, recovery, rollback, or removed. If it is REMOVED, the error is permanent and we should not retry.

              Assignee:
              Matthew Russotto
              Reporter:
              Matthew Russotto
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: