# UNAVAILABLE: grpc: 未找到负载均衡策略 "pick_first"

- **ID:** `grpc/load-balancing-policy-pick-first-not-found`
- **领域:** grpc
- **类别:** config_error
- **验证级别:** ai_generated
- **修复率:** 90%

## 根因

gRPC 客户端尝试使用未在二进制文件中注册的负载均衡策略名称，通常由于缺少构建标签或策略导入。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| gRPC Go 1.65.0 | active | — | — |
| gRPC Python 1.64.0 | active | — | — |
| gRPC Java 1.62.0 | active | — | — |

## 解决方案

1. ```
   在 gRPC Go 中导入 pick_first 策略：`import _ "google.golang.org/grpc/balancer/pick_first"` 或使用 `grpc.WithDefaultServiceConfig` 设置策略为 `"round_robin"` 并先导入 `_ "google.golang.org/grpc/balancer/roundrobin"`
   ```
2. ```
   在 gRPC Python 中，设置 `grpc.ssl_channel_credentials().load_latest_certificates()` 或使用自定义解析器指定内置策略如 `round_robin`
   ```

## 无效尝试

- **Change policy name to 'round_robin' without importing the package** — Same missing import issue for 'round_robin' policy. (70% 失败率)
- **Manually set service config with an unknown policy string** — gRPC validates policy names at startup; invalid names cause same error. (90% 失败率)
- **Upgrade the gRPC library to latest version without code changes** — The policy must be explicitly imported in code; version upgrade alone doesn't fix. (50% 失败率)
