Graph Engine Error Messages and Codes
Amazon Neptune endpoints return the standard errors for Gremlin and SPARQL when encountered.
Errors that are specific to Neptune can also be returned from the same endpoints. This section documents Neptune error messages, codes, and recommended actions.
Note
These errors are for the Neptune DB cluster endpoints only. The APIs for creating and modifying Neptune resources with the AWS SDK and AWS CLI have a different set of common errors. For information about those errors, see DB Cluster Management API Error Messages and Codes.
Graph Engine Error Format
Neptune error messages return a relevant HTTP error code and a JSON-formatted response.
HTTP/1.1 400 Bad Request x-amzn-RequestId: LDM6CJP8RMQ1FHKSC1RBVJFPNVV4KQNSO5AEMF66Q9ASUAAJG Content-Type: application/x-amz-json-1.0 Content-Length: 465 Date: Thu, 15 Mar 2017 23:56:23 GMT { "requestId": "
0dbcded3-a9a1-4a25-b419-828c46342e47
", "code": "ReadOnlyViolationException
", "detailedMessage": "The request is rejected because it violates some read-only restriction, such as a designation of a replica as read-only.
" }
Graph Engine Query Errors
The following table contains the error code, message, and HTTP status.
It also indicates whether it is OK to retry the request. Generally, it is OK to retry the request if it might succeed on a new try.
Neptune Service Error Code | HTTP status | Ok to Retry? | Message |
---|---|---|---|
AccessDeniedException |
403 | No | Authentication or authorization failure. |
BadRequestException |
400 | No | The request could not be completed. |
BadRequestException |
400 | No | Request size exceeds max allowed value of 157286400 bytes. |
CancelledByUserException |
500 | Yes | The request processing was cancelled by an authorized client. |
ConcurrentModificationException |
500 | Yes | The request processing did not succeed due to a modification conflict. The client should retry the request. |
ConstraintViolationException |
400 | Yes | The query engine discovered, during the execution of the request, that the completion of some operation is impossible without violating some data integrity constraints, such as persistence of in- and out-vertices while adding an edge. Such conditions are typically observed if there are concurrent modifications to the graph, and are transient. The client should retry the request. |
FailureByQueryException |
500 | Yes | Calling fail() caused request processing to fail. |
InternalFailureException |
500 | Yes | The request processing has failed. |
InvalidNumericDataException |
400 | No | Invalid use of numeric data which cannot be represented in 64-bit storage size. |
InvalidParameterException |
400 | No | An invalid or out-of-range value was supplied for some input parameter or invalid syntax in a supplied RDF file. |
MalformedQueryException |
400 | No | The request is rejected because it contains a query that is syntactically incorrect or does not pass additional validation. |
MemoryLimitExceededException |
500 | Yes | The request processing did not succeed due to lack of memory, but can be retried when the server is less busy. |
MethodNotAllowedException |
405 | No | The request is rejected because the chosen HTTP method is not supported by the used endpoint. |
MissingParameterException |
400 | No | A required parameter for the specified action is not supplied. |
QueryLimitExceededException |
500 | Yes | The request processing did not succeed due to the lack of a limited resource, but can be retried when the server is less busy. |
QueryLimitException |
400 | No | Size of query exceeds system limit. |
QueryTooLargeException |
400 | No | The request was rejected because its body is too large. |
ReadOnlyViolationException |
400 | No | The request is rejected because it violates some read-only restriction, such as a designation of a replica as read-only. |
ThrottlingException |
500 | Yes | Rate of requests exceeds the maximum throughput. OK to retry. |
TimeLimitExceededException |
500 | Yes | The request processing timed out. |
TooManyRequestsException |
429 | Yes | The rate of requests exceeds the maximum throughput. OK to retry. |
UnsupportedOperationException |
400 | No | The request uses a currently unsupported feature or construct. |
IAM Authentication Errors
These errors are specific to cluster that have IAM authentication enabled.
The following table contains the error code, message, and HTTP status.
Neptune Service Error Code | HTTP status | Message |
---|---|---|
Incorrect IAM User/Policy | 403 | You do not have sufficient access to perform this action. |
Incorrect or Missing Region | 403 | Credential should be scoped to a valid Region, not
'region '. |
Incorrect or Missing Service Name | 403 | Credential should be scoped to correct service: 'neptune-db '. |
Incorrect or Missing Host Header / Invalid Signature | 403 | The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details. Host header is missing or hostname is incorrect. |
Missing X-Amz-Security-Token |
403 | 'x-amz-security-token ' is named as a SignedHeader , but it
does not exist in the HTTP request |
Missing Authorization Header | 403 | The request did not include the required authorization header, or it was malformed. |
Missing Authentication Token | 403 | Missing Authentication Token. |
Old Date | 403 | Signature expired: 20181011T213907Z is now earlier than
20181011T213915Z
(20181011T214415Z - 5 min .) |
Future Date | 403 | Signature not yet current: 20500224T213559Z is still
later than 20181108T225925Z
(20181108T225425Z + 5 min .) |
Incorrect Date Format | 403 | Date must be in ISO-8601 'basic format'. Got 'date '. See
https://en.wikipedia.org/wiki/ISO_8601 |
Unknown/Missing Access Key or Session Token | 403 | The security token included in the request is invalid. |
Unknown/Missing Secret Key | 403 | The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details. Host header is missing or hostname is incorrect. |
TooManyRequestsException |
429 | The rate of requests exceeds the maximum throughput. OK to retry. |