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

Make failpoint in NetworkInterfaceTL sort targets before constructing CommandState

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.0-rc0, 4.7.0
    • Affects Version/s: None
    • Component/s: Internal Code
    • Labels:
      None
    • Fully Compatible
    • ALL
    • v4.4
    • Service Arch 2020-04-06
    • 45

      The failpoint "networkInterfaceSendRequestsToTargetHostsInAlphabeticalOrder" currently sorts request.target after request has already been moved into cmdState. So at that point, it is sorting request.target and not cmdState->requestOnAny.target. In the case where request.target is not sorted in the beginning, the connection attached to the requestState will be different from the connection to the host attached to the state. That leads to incorrect behaviors including causing _killOperations to be sent to the wrong node (since the flag fulfilledPromise can be set on the wrong requestState).

            Assignee:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Reporter:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: