gRPC

gRPC 5 NOT_FOUND vs 8 RESOURCE_EXHAUSTED

Both gRPC 5 (NOT_FOUND) and 8 (RESOURCE_EXHAUSTED) belong to the gRPC Status Codes category. 5 indicates that some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist. Meanwhile, 8 means that some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space.

Description

Some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist.

When You See It

The resource referenced in the request doesn't exist — such as looking up a user by ID that has been deleted or never created.

How to Fix

Verify the resource identifier is correct. Ensure the resource was created before accessing it, or handle the not-found case gracefully in your client.

Description

Some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space.

When You See It

A rate limit was hit, a quota was exceeded, or the server ran out of memory/disk. Common with API rate limiting and resource quotas.

How to Fix

Implement exponential backoff and retry. If quota-related, request a quota increase or optimize your usage pattern to stay within limits.

Key Differences

1.

gRPC 5: Some requested entity was not found. For example, a file or directory that the RPC was supposed to operate on does not exist.

2.

gRPC 8: Some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space.

3.

You encounter 5 when the resource referenced in the request doesn't exist — such as looking up a user by ID that has been deleted or never created.

4.

You encounter 8 when a rate limit was hit, a quota was exceeded, or the server ran out of memory/disk. Common with API rate limiting and resource quotas.

When to Use Which

For 5 (NOT_FOUND): Verify the resource identifier is correct. Ensure the resource was created before accessing it, or handle the not-found case gracefully in your client. For 8 (RESOURCE_EXHAUSTED): Implement exponential backoff and retry. If quota-related, request a quota increase or optimize your usage pattern to stay within limits.

Learn More