package codes
Import Path
google.golang.org/grpc/codes (on go.dev)
Dependency Relation
imports 2 packages, and imported by 5 packages
Involved Source Files
code_string.go
Package codes defines the canonical error codes used by gRPC. It is
consistent across various languages.
Package-Level Type Names (only one, which is exported)
A Code is an unsigned 32-bit error code as defined in the gRPC spec.
( Code) String() string
UnmarshalJSON unmarshals b into the Code.
*Code : encoding/json.Unmarshaler
Code : expvar.Var
Code : fmt.Stringer
Code : context.stringer
Code : github.com/aws/smithy-go/middleware.stringer
Code : runtime.stringer
func google.golang.org/grpc.Code(err error) Code
func google.golang.org/grpc/internal/status.(*Status).Code() Code
func google.golang.org/grpc/status.Code(err error) Code
func google.golang.org/grpc.Errorf(c Code, format string, a ...interface{}) error
func google.golang.org/grpc/internal/status.Err(c Code, msg string) error
func google.golang.org/grpc/internal/status.Errorf(c Code, format string, a ...interface{}) error
func google.golang.org/grpc/internal/status.New(c Code, msg string) *status.Status
func google.golang.org/grpc/internal/status.Newf(c Code, format string, a ...interface{}) *status.Status
func google.golang.org/grpc/status.Error(c Code, msg string) error
func google.golang.org/grpc/status.Errorf(c Code, format string, a ...interface{}) error
func google.golang.org/grpc/status.New(c Code, msg string) *status.Status
func google.golang.org/grpc/status.Newf(c Code, format string, a ...interface{}) *status.Status
const Aborted
const AlreadyExists
const Canceled
const DataLoss
const DeadlineExceeded
const FailedPrecondition
const Internal
const InvalidArgument
const NotFound
const OK
const OutOfRange
const PermissionDenied
const ResourceExhausted
const Unauthenticated
const Unavailable
const Unimplemented
const Unknown
Package-Level Variables (only one, which is unexported)
Package-Level Constants (total 18, in which 17 are exported)
Aborted indicates the operation was aborted, typically due to a
concurrency issue like sequencer check failures, transaction aborts,
etc.
See litmus test above for deciding between FailedPrecondition,
Aborted, and Unavailable.
This error code will not be generated by the gRPC framework.
AlreadyExists means an attempt to create an entity failed because one
already exists.
This error code will not be generated by the gRPC framework.
Canceled indicates the operation was canceled (typically by the caller).
The gRPC framework will generate this error code when cancellation
is requested.
DataLoss indicates unrecoverable data loss or corruption.
This error code will not be generated by the gRPC framework.
DeadlineExceeded means operation expired before completion.
For operations that change the state of the system, this error may be
returned even if the operation has completed successfully. For
example, a successful response from a server could have been delayed
long enough for the deadline to expire.
The gRPC framework will generate this error code when the deadline is
exceeded.
FailedPrecondition indicates operation was rejected because the
system is not in a state required for the operation's execution.
For example, directory to be deleted may be non-empty, an rmdir
operation is applied to a non-directory, etc.
A litmus test that may help a service implementor in deciding
between FailedPrecondition, Aborted, and Unavailable:
(a) Use Unavailable if the client can retry just the failing call.
(b) Use Aborted if the client should retry at a higher-level
(e.g., restarting a read-modify-write sequence).
(c) Use FailedPrecondition if the client should not retry until
the system state has been explicitly fixed. E.g., if an "rmdir"
fails because the directory is non-empty, FailedPrecondition
should be returned since the client should not retry unless
they have first fixed up the directory by deleting files from it.
(d) Use FailedPrecondition if the client performs conditional
REST Get/Update/Delete on a resource and the resource on the
server does not match the condition. E.g., conflicting
read-modify-write on the same resource.
This error code will not be generated by the gRPC framework.
Internal errors. Means some invariants expected by underlying
system has been broken. If you see one of these errors,
something is very broken.
This error code will be generated by the gRPC framework in several
internal error conditions.
InvalidArgument indicates client specified an invalid argument.
Note that this differs from FailedPrecondition. It indicates arguments
that are problematic regardless of the state of the system
(e.g., a malformed file name).
This error code will not be generated by the gRPC framework.
NotFound means some requested entity (e.g., file or directory) was
not found.
This error code will not be generated by the gRPC framework.
OK is returned on success.
OutOfRange means operation was attempted past the valid range.
E.g., seeking or reading past end of file.
Unlike InvalidArgument, this error indicates a problem that may
be fixed if the system state changes. For example, a 32-bit file
system will generate InvalidArgument if asked to read at an
offset that is not in the range [0,2^32-1], but it will generate
OutOfRange if asked to read from an offset past the current
file size.
There is a fair bit of overlap between FailedPrecondition and
OutOfRange. We recommend using OutOfRange (the more specific
error) when it applies so that callers who are iterating through
a space can easily look for an OutOfRange error to detect when
they are done.
This error code will not be generated by the gRPC framework.
PermissionDenied indicates the caller does not have permission to
execute the specified operation. It must not be used for rejections
caused by exhausting some resource (use ResourceExhausted
instead for those errors). It must not be
used if the caller cannot be identified (use Unauthenticated
instead for those errors).
This error code will not be generated by the gRPC core framework,
but expect authentication middleware to use it.
ResourceExhausted indicates some resource has been exhausted, perhaps
a per-user quota, or perhaps the entire file system is out of space.
This error code will be generated by the gRPC framework in
out-of-memory and server overload situations, or when a message is
larger than the configured maximum size.
Unauthenticated indicates the request does not have valid
authentication credentials for the operation.
The gRPC framework will generate this error code when the
authentication metadata is invalid or a Credentials callback fails,
but also expect authentication middleware to generate it.
Unimplemented indicates operation is not implemented or not
supported/enabled in this service.
This error code will be generated by the gRPC framework. Most
commonly, you will see this error code when a method implementation
is missing on the server. It can also be generated for unknown
compression algorithms or a disagreement as to whether an RPC should
be streaming.
Unknown error. An example of where this error may be returned is
if a Status value received from another address space belongs to
an error-space that is not known in this address space. Also
errors raised by APIs that do not return enough error information
may be converted to this error.
The gRPC framework will generate this error code in the above two
mentioned cases.
The pages are generated with Golds v0.4.9. (GOOS=linux GOARCH=amd64)