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

Test that 4.4 nodes do not silently ignore secondaryDelaySecs

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.9.0
    • Affects Version/s: None
    • Component/s: Replication
    • None
    • Fully Compatible
    • ALL
    • Repl 2021-03-08, Repl 2021-03-22

      After SERVER-54908, we will also need to change 4.4 to prevent a 4.4 binary from starting up if the secondaryDelaySecs field is present. This would only occur during a manual downgrade (i.e. not using Atlas):
      1. Start up shard server processes on MDB 4.9 / FCV 4.4.
      2. rs.init() with secondaryDelaySecs.
      3. Downgrade shard binary to MDB 4.4 / FCV 4.4 (MDB won't automatically change existing secondaryDelaySecs fields to slaveDelay since that occurs only when downgrading the FCV).
      4. User now has a 4.4 binary that will silently ignore the secondaryDelaySecs field entirely.

      By adding an error during startup in 4.4, the user will know that they have to change the field back to slaveDelay in order for MDB to properly use the delay field. We should document this behavior.

      EDIT:
      Since 4.4 will already fail to parse an invalid config and not startup, this ticket will just add a test for 5.0.

            Assignee:
            pavithra.vetriselvan@mongodb.com Pavithra Vetriselvan
            Reporter:
            pavithra.vetriselvan@mongodb.com Pavithra Vetriselvan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: