gRPC

gRPC 1 CANCELLED vs 6 ALREADY_EXISTS

Both gRPC 1 (CANCELLED) and 6 (ALREADY_EXISTS) belong to the gRPC Status Codes category. 1 indicates that the operation was cancelled, typically by the caller. Meanwhile, 6 means that the entity that a client attempted to create already exists. For example, a file or directory that the RPC was supposed to create already exists.

描述

The operation was cancelled, typically by the caller.

何时出现

The client explicitly cancelled the RPC, or a deadline or context cancellation propagated to the server before it could finish processing.

如何修复

If unexpected, check whether the client is setting too-short deadlines or if cancellation is being triggered inadvertently in your call chain.

描述

The entity that a client attempted to create already exists. For example, a file or directory that the RPC was supposed to create already exists.

何时出现

A create operation failed because a resource with the same unique identifier or name already exists in the system.

如何修复

Use a different identifier, or switch to an upsert/update operation if overwriting is acceptable. Check for existing resources before creating.

主要区别

1.

gRPC 1: The operation was cancelled, typically by the caller.

2.

gRPC 6: The entity that a client attempted to create already exists. For example, a file or directory that the RPC was supposed to create already exists.

3.

You encounter 1 when the client explicitly cancelled the RPC, or a deadline or context cancellation propagated to the server before it could finish processing.

4.

You encounter 6 when a create operation failed because a resource with the same unique identifier or name already exists in the system.

何时使用哪个

For 1 (CANCELLED): If unexpected, check whether the client is setting too-short deadlines or if cancellation is being triggered inadvertently in your call chain. For 6 (ALREADY_EXISTS): Use a different identifier, or switch to an upsert/update operation if overwriting is acceptable. Check for existing resources before creating.

了解更多