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

Add server test to ensure running a replica set node on a port not specified by the rsconfig document does not fire a no-op on step up.

    • Type: Icon: Task Task
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Repl 2019-12-30, Repl 2020-01-13, Repl 2020-01-27, Repl 2020-02-10, Repl 2020-02-24, Repl 2020-03-09, Repl 2020-03-23

      As part of supporting Point in Time restores for 4.2 deployments on Cloud backup, there is an intermediary step to re-start a node as a single node replica set on an ephemeral port, one that is not included in the replica set config document. The reason why the node is started on an ephemeral port is to avoid the no-op that occurs on stepup during the election. This ticket was created to ensure that a server change does not break this behavior, as well as to potentially discuss alternative solutions.

       

      Text below taken from comment thread with Siyuan.

       
      Some other ideas: 1) update its host:port so that it cannot talk to itself. The node will be in REMOVED state after recovery; 2) update its config to include another non-existent node, so it'll run for election infinitely but never succeeds; 3) make its priority 0, not sure if this works, but this is the most elegant way without significant change; 4) set a very high minValid it cannot reach in recovery, so that this node will stay in RECOVERING state; 5) add a new command to truncate oplog in standalone mode, but backward compatibility will be an issue.

            Assignee:
            judah.schvimer@mongodb.com Judah Schvimer
            Reporter:
            steven.connors@mongodb.com Steven Connors (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: