# rpc error: code = Unavailable desc = name resolver error: produced zero addresses

- **ID:** `go/grpc-failed-to-exit-idle`
- **Domain:** go
- **Category:** network_error
- **Verification:** ai_generated
- **Fix Rate:** 80%

## Root Cause

The name resolver (DNS or custom) returned no addresses for the target. Often a typo in the target string, a DNS failure, or a resolver that has not yet received updates.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| 1.x | active | — | — |

## Workarounds

1. **** (90% success)
   ```
   Verify the target format: use dns:///host:port or passthrough:///host:port explicitly, and check that the hostname resolves with net.LookupHost.
   ```
2. **** (85% success)
   ```
   For custom resolvers, implement the Resolver interface correctly and call cc.UpdateState with a non-empty Addresses slice; add logging in Build to confirm resolution.
   ```

## Dead Ends

- **** — Bypassing the resolver breaks load balancing and service discovery, and the IP may change. (60% fail)
- **** — If the resolver genuinely returns zero addresses, waiting longer does not produce addresses. (75% fail)
