Cardinality violations should use error code “unimplemented”
- Dominant language
- JavaScript
- Stars
- 9.3k
- Forks
- 802
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 5
Description
The gRPC docs for error codes state that both client and server should use the `unimplemented` code for cardinality violations. See table at the bottom of this doc (you can search for “cardinality violation” in the doc): https://grpc.github.io/grpc/core/md_doc_statuscodes.html.
A cardinality violation is when a response stream contains an incorrect number of messages. Specifically, when the response stream for a unary RPC contains zero messages with an OK status or more than one message. (The same goes for client-stream RPCs, which also expect a unary response, but this package does not support client-streaming.)
The client in this package returns an `unknown` error in this situation instead of `unimplemented`.
Contributor guide
Assessment
This issue has not been assessed yet.