gRPC

gRPC 0 OK vs 13 INTERNAL

Both gRPC 0 (OK) and 13 (INTERNAL) belong to the gRPC Status Codes category. 0 indicates that the operation completed successfully. Not an error; returned on success. Meanwhile, 13 means that an internal error occurred. This means that some invariant expected by the underlying system has been broken.

0 OK
gRPC

Description

The operation completed successfully. Not an error; returned on success.

When You See It

The RPC completed without any issues. This is the expected response for every successful gRPC call.

How to Fix

No fix needed — this indicates everything worked correctly.

Description

An internal error occurred. This means that some invariant expected by the underlying system has been broken.

When You See It

A server-side bug, a corrupted internal state, or an unexpected failure in a dependency. This is the gRPC equivalent of HTTP 500.

How to Fix

Check the server error logs and traces for the root cause. This typically indicates a bug that needs to be fixed in the server code.

Key Differences

1.

gRPC 0: The operation completed successfully. Not an error; returned on success.

2.

gRPC 13: An internal error occurred. This means that some invariant expected by the underlying system has been broken.

3.

You encounter 0 when the RPC completed without any issues. This is the expected response for every successful gRPC call.

4.

You encounter 13 when a server-side bug, a corrupted internal state, or an unexpected failure in a dependency. This is the gRPC equivalent of HTTP 500.

When to Use Which

For 0 (OK): No fix needed — this indicates everything worked correctly. For 13 (INTERNAL): Check the server error logs and traces for the root cause. This typically indicates a bug that needs to be fixed in the server code.

Learn More