gRPC

gRPC 8 RESOURCE_EXHAUSTED vs 15 DATA_LOSS

Both gRPC 8 (RESOURCE_EXHAUSTED) and 15 (DATA_LOSS) belong to the gRPC Status Codes category. 8 indicates that some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space. Meanwhile, 15 means that unrecoverable data loss or corruption has occurred.

描述

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

何时出现

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.

如何修复

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

描述

Unrecoverable data loss or corruption has occurred.

何时出现

Critical data was lost or corrupted — for example, a checksum mismatch during transmission or an unrecoverable storage failure on the server.

如何修复

Investigate the data integrity failure immediately. Restore from backups if available, and check for hardware failures or network corruption in the data path.

主要区别

1.

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

2.

gRPC 15: Unrecoverable data loss or corruption has occurred.

3.

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.

4.

You encounter 15 when critical data was lost or corrupted — for example, a checksum mismatch during transmission or an unrecoverable storage failure on the server.

何时使用哪个

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. For 15 (DATA_LOSS): Investigate the data integrity failure immediately. Restore from backups if available, and check for hardware failures or network corruption in the data path.

了解更多