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

Make sure secondary has finished closing connections after being removed before sending new commands in awaitable_hello_on_nodes_with_invalid_configs.js

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: 4.4.0
    • Fix Version/s: 4.9.0, 4.4.4
    • Component/s: None
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4
    • Sprint:
      Repl 2020-11-30, Repl 2020-12-14
    • Linked BF Score:
      35

      Description

      Currently, we use assert.soon to poll the secondary using replSetGetStatus to check if the node recognizes that it has been removed via heartbeat reconfig.  The test then moves on by issuing commands on the removed secondary. However, it is possible that we poll at this exact moment where the secondary has updated its replSetStatus response and drops its lock, and in that case, it is posslble we start issuing commands on the node when it starts to close all connections as part of transitioning to REMOVED. This causes network errors to happen sporadically in our patch builds in this specific part of the test.

      I think ideally, we want to wait for the connections to finish closing before we start issuing commands. We can do this by adding a failpoint.

        Attachments

          Activity

            People

            Assignee:
            jason.chan Jason Chan
            Reporter:
            jason.chan Jason Chan
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: