[SERVER-78148] Associate SocketException with offending HostAndPort Created: 15/Jun/23 Updated: 29/Oct/23 Resolved: 15/Aug/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Alex Li | Assignee: | Alex Li |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Operating System: | ALL | ||||||||
| Sprint: | 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 | ||||||||
| Participants: | |||||||||
| Description |
|
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. |
| Comments |
| Comment by Githook User [ 14/Aug/23 ] |
|
Author: {'name': 'Alex Li', 'email': 'alex.li@mongodb.com', 'username': 'lia394126'}Message: |