-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
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.
- is duplicated by
-
SERVER-84812 Associate SocketException with a HostAndPort
- Closed