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.
Descripción
Some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space.
Cuándo lo verás
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.
Cómo solucionarlo
Implement exponential backoff and retry. If quota-related, request a quota increase or optimize your usage pattern to stay within limits.
Descripción
Unrecoverable data loss or corruption has occurred.
Cuándo lo verás
Critical data was lost or corrupted — for example, a checksum mismatch during transmission or an unrecoverable storage failure on the server.
Cómo solucionarlo
Investigate the data integrity failure immediately. Restore from backups if available, and check for hardware failures or network corruption in the data path.
Diferencias clave
gRPC 8: Some resource has been exhausted, perhaps a per-user quota, or the entire file system is out of space.
gRPC 15: Unrecoverable data loss or corruption has occurred.
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.
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.
Cuándo usar cada uno
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.