Skip to content

Problem solving

This is page is used to help developers tackle common problems that may arise when using openOBD.

gRPC Exceptions

Various gRPC exceptions are thrown during openOBD sessions and this page helps to understand and identify why and what they mean. Exceptions thrown follow conventional gRPC status codes. These status codes are used during gRPC runtime to whenever error occur to indicate the cause.

Status codes

This section is used to help developers identify what certain status codes mean when seen during runtime and what the possible causes might be. It aims to help understand why the error codes are seen and their probable cause, ultimately helping the developer to better understand how sessions and services work.

Sessions

This section addresses common gRPC error codes seen when trying to start a new session via a client implementation. It aims to help explain why these errors are seen and what they mean.

gRPC status code status detail reason
3 INVALID_ARGUMENT Invalid client The Partner API credentials are not correct.
7 PERMISSION_DENIED Only allowed call to be made at this point is the authenticate() call First call authenticate() before any other call can be made to an openOBD session.
7 PERMISSION_DENIED Session is already authenticated, at this point the authenticate() call is not permitted The authenticate() call can only be made once to a session. Once authenticated it is 'claimed' by the process who made the authenticate() call.
9 FAILED_PRECONDITION No ticket found with the ticket number: "7961425" The ticket may not exist.
14 UNAVAILABLE Generic unavailable message (Without explicit explanation!) The service is (partially) down. Please contact support when this message keeps occurring.
14 UNAVAILABLE Resource already in use. There is already an openOBD session attached. This is usually the result of not properly closing an openOBD session. You should interrupt the existing openOBD session.
14 UNAVAILABLE There are no free resources available at the moment. Please try again in two minutes. The number of available resources is too low. We start scaling out.
14 UNAVAILABLE Cannot reach internal service! Please contact support if this problem persists.

Only allowed call to be made at this point is the authenticate() call (gRPC status: 7, permission denied)

Services

This section addresses common gRPC error codes seen during active services in a session.

Streams

gRPC status code status detail reason
13 INTERNAL Received RST_STREAM with error code 2 The server has closed the stream. This can happen when a session is interrupted or finished, or because of a timeout (See Session limitations).
16 UNAUTHENTICATED Session is not in the right state to accept commands (any more) The openOBD session has been stopped.