MCPcopy Create free account
hub / github.com/apache/impala / HandleFailedExecRpcs

Method HandleFailedExecRpcs

be/src/runtime/coordinator.cc:1350–1369  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1348}
1349
1350void Coordinator::HandleFailedExecRpcs(vector<BackendState*> failed_backend_states) {
1351 DCHECK(!failed_backend_states.empty());
1352
1353 // Create an error based on the Exec RPC failure Status
1354 vector<string> backend_addresses;
1355 backend_addresses.reserve(failed_backend_states.size());
1356 for (BackendState* backend_state : failed_backend_states) {
1357 backend_addresses.push_back(
1358 NetworkAddressPBToString(backend_state->krpc_impalad_address()));
1359 }
1360 Status retryable_status = Status::Expected(
1361 Substitute("ExecFInstances RPC to $0 failed", join(backend_addresses, ",")));
1362 for (BackendState* backend_state : failed_backend_states) {
1363 retryable_status.MergeStatus(
1364 FromKuduStatus(backend_state->exec_rpc_status(), "Exec() rpc failed"));
1365 }
1366
1367 // Retry the query
1368 parent_query_driver_->TryQueryRetry(parent_request_state_, &retryable_status);
1369}
1370
1371int64_t Coordinator::GetMaxBackendStateLagMs(NetworkAddressPB* address) {
1372 DCHECK(exec_rpcs_complete_.Load()) << "Exec() must be called first.";

Callers

nothing calls this directly

Calls 11

NetworkAddressPBToStringFunction · 0.85
SubstituteFunction · 0.85
joinFunction · 0.85
FromKuduStatusFunction · 0.85
reserveMethod · 0.80
push_backMethod · 0.80
MergeStatusMethod · 0.80
exec_rpc_statusMethod · 0.80
TryQueryRetryMethod · 0.80
emptyMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected