-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Integration
-
Fully Compatible
-
v8.3, v8.2
-
0
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Stacked on top of the CommandFailed retry fix (SERVER-127065).
`blockUntilIndexQueryable` sends `_shardsvrRunSearchIndexCommand` to each
shard with a 60 s `kRemoteCommandTimeout`. On slow aubsan builds the shard
can exceed that deadline, returning `NetworkInterfaceExceededTimeLimit`
(code 89) at the network layer. `Shard::shouldErrorBePropagated(89)` returns
`false` (hardcoded exclusion), so the old code wrapped the error in
`OperationFailed` and threw immediately — causing a spurious BF
(`search_meta_explain.js` in BF-43358) instead of retrying.
*Fix*: when `!shouldErrorBePropagated`, log and retry with `kRetryPeriodMs`
rather than throwing. This covers `NetworkInterfaceExceededTimeLimit` and all
other mongos-retriable network errors that might transiently fail the poll.
*File changed*: `src/mongo/db/query/search/search_index_command_testing_helper.h`
- is related to
-
SERVER-127065 Retry on CommandFailed in blockUntilIndexQueryable when mongot is transiently unreachable
-
- Closed
-