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

Associate SocketException with offending HostAndPort

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 7.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • Service Arch 2023-06-26, Service Arch 2023-07-10, Service Arch 2023-07-24, Service Arch 2023-08-07, Service Arch 2023-08-21

      Currently, the NetworkInterfaceTL returns SocketException as a status, which is converted to a RemoteCommandResponse without HostAndPort. It is useful to know exactly which HostAndPort caused this issue.

      Instead of a status, the promise can be fulfilled with a RemoteCommandResponse instantiated with the status and a target HostAndPort.

      Making this change caused some issues with ReplicaSetMonitor (probably expecting a Status instead of RemoteCommandResponse on hello or pings). Fix this and other issues that appear due to this change. 

      In AsyncRPC and AsyncRequestsSender, because no HostAndPort associates with SocketException/HostUnreachable, the HostAndPort used to update the ReplicaSetMonitor is (wrongly) the first HostAndPort in RemoteCommandRequest's target vector. This target is arbitrary and could be wrong. This would also need to be changed.

            Assignee:
            alex.li@mongodb.com Alex Li
            Reporter:
            alex.li@mongodb.com Alex Li
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: