{"record":{"id":"402e3d4af0ea9f5f","repo":"databendlabs/databend","slug":"failed-to-create-client","errorCode":null,"errorMessage":"Failed to create client: {}","messagePattern":"Failed to create client: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/meta/binaries/metaverifier/main.rs","lineNumber":146,"sourceCode":"\n        let handle = DatabendRuntime::spawn(\n            async move {\n                let client = MetaGrpcClient::<DatabendRuntime>::try_create(\n                    addrs.clone(),\n                    \"root\",\n                    \"xxx\",\n                    None,\n                    None,\n                    None,\n                    DEFAULT_GRPC_MESSAGE_SIZE,\n                );\n\n                let client = match client {\n                    Ok(client) => client,\n                    Err(e) => {\n                        fs::write(VERIFIER_RESULT_FILE, \"ERROR\")?;\n                        eprintln!(\"Failed to create client: {}\", e);\n                        bail!(\"Failed to create client: {}\", e);\n                    }\n                };\n\n                verifier(\n                    &client,\n                    prefix,\n                    config.number,\n                    client_num,\n                    config.remove_percent,\n                )\n                .await\n            },\n            None,\n        );\n        println!(\"verifier worker {} started..\", client_num);\n        handles.push(handle)\n    }\n","sourceCodeStart":128,"sourceCodeEnd":164,"githubUrl":"https://github.com/databendlabs/databend/blob/288d84d76e20a2f8f7173bda9691eb6ece301aa9/src/meta/binaries/metaverifier/main.rs#L128-L164","documentation":"During verification, metaverifier spawns clients that connect to the meta service. If creating the meta gRPC client fails (network unreachable, wrong address, auth/TLS problems), the worker writes \"ERROR\" to the verifier result file, prints this message, and bails — failing the whole run.","triggerScenarios":"grpc_api_address pointing at a host/port with no running databend-meta, DNS resolution failure, connection refused, TLS misconfiguration, or the meta service rejecting the client when creating a MetaGrpcClient inside the spawned task.","commonSituations":"Meta service not started or crashed; wrong port in grpc_api_address; firewall/Docker networking blocking the port; address configured with http:// prefix; version mismatch between metaverifier and the meta cluster.","solutions":["Confirm databend-meta is running and listening on the configured grpc_api_address (check logs, netstat/ss, curl).","Fix the address/port and TLS settings in the metaverifier config.","Check for connection-refused details in stderr before this message to identify the underlying cause.","Check the VERIFIER_RESULT_FILE for \"ERROR\" and rerun after connectivity is fixed."],"exampleFix":"// before\ngrpc_api_address = \"meta.internal:9191\"   # host not resolvable\n// after\ngrpc_api_address = \"10.0.0.5:9191\"        # reachable meta node","handlingStrategy":"retry","validationCode":"// probe the meta gRPC endpoint before spawning verifier clients\nuse tokio::net::TcpStream;\nTcpStream::connect(&config.grpc_api_address)\n    .await\n    .map_err(|e| anyhow::anyhow!(\"meta gRPC address unreachable {}: {}\", config.grpc_api_address, e))?;","typeGuard":null,"tryCatchPattern":"let client = MetaGrpcClient::try_create(...)\n    .map_err(|e| {\n        fs::write(VERIFIER_RESULT_FILE, \"ERROR\").ok();\n        eprintln!(\"Failed to create client: {} — check meta service is up on {}\", e, addr);\n        e\n    })?;","preventionTips":["Ensure databend-meta is running and listening on grpc_api_address before verification.","Check ports/firewalls/DNS, especially in Docker or k8s setups.","Align metaverifier and meta service versions.","Read stderr above this message: the inner error usually names the transport cause."],"tags":["metaverifier","grpc","client","network"],"backgroundTag":"connection-refused","analyzedSha":"288d84d76e20a2f8f7173bda9691eb6ece301aa9","analyzedAt":"2026-09-11T11:29:36.208Z","contentChangedAt":"2026-09-11T11:29:36.208Z","schemaVersion":2},"datasetVersion":"2026-09-16T04:17:20.429Z"}