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. |