Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-49305

Remove reconfig retries in our tests

    • Type: Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • None
    • Replication

      The reconfig helpers throughout the testing infrastructure retry on various transient errors. Some are due to automatic reconfigs that bump the config version and happen asynchronously, others are due to unnecessary connections being closed due to SERVER-48178. The retries were first added in SERVER-32028, SERVER-40060, SERVER-32638, SERVER-31080, SERVER-27839, and SERVER-27551, but extended significantly in SERVER-46541.

      In general our retries are not consistent between python fixture initiate, python fixture reconfig, javascript fixtures, and javascript helpers. It's not clear why these differences exist, or if it's just because of where we've historically seen BFs.

      Following closing SERVER-48178 we may be able to remove the NodeNotFound retries (see this comment for details).

      We also can consider waiting for 'newlyAdded' removals before issuing reconfigs in more places, rather than just retrying on failures. This might not be straightforward though, since waiting for 'newlyAdded' removals may not always be possible in some testing configurations. This will allow us to not retry on ConfigurationInProgress, ConfigurationNotCommittedYet, and possibly NewReplicaSetConfigurationIncompatible errors.

            Assignee:
            backlog-server-repl [DO NOT USE] Backlog - Replication Team
            Reporter:
            judah.schvimer@mongodb.com Judah Schvimer
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: