

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Neptune 서비스 오류
<a name="errors"></a>

Amazon Neptune에는 2가지의 오류가 있습니다.
+ 하나는 Neptune DB 클러스터 엔드포인트에만 해당되는 그래프 엔진 오류입니다.
+ 이러한 오류는 AWS SDK 및 AWS Command Line Interface(AWS CLI)로 Neptune 리소스를 생성하고 수정하기 위한 API와 관련된 오류입니다.

**Topics**
+ [사용 가능한 DB 인스턴스 부족](insufficientDBInstancesAvailable.md)
+ [그래프 엔진 오류 메시지 및 코드](errors-engine-codes.md)
+ [DB Cluster Management API 오류 메시지 및 코드](CommonErrors.md)
+ [Neptune 로더 오류 및 피드 메시지](loader-message.md)

# 사용 가능한 DB 인스턴스 부족
<a name="insufficientDBInstancesAvailable"></a>

 DB 인스턴스를 생성, 시작 또는 수정하려고 시도하면 `InsufficientDBInstanceCapacity` 오류가 반환될 수 있습니다. DB 스냅샷에서 DB 인스턴스를 복원하려고 시도할 때도 오류가 반환될 수 있습니다. 이 오류가 반환되는 일반적인 원인은 특정 DB 인스턴스 클래스를 요청된 가용 영역에서 사용할 수 없기 때문입니다. 문제 해결을 위해 다음 중 하나를 시도할 수 있습니다.
+  다른 DB 인스턴스 클래스에서 요청을 재시도합니다.
+  다른 가용 영역에서 요청을 재시도합니다.
+  명시적인 가용 영역을 지정하지 않고 요청을 재시도합니다.

 Amazon EC2에서 인스턴스 용량 문제를 해결하는 방법은 Amazon EC2 사용 설명서의 [부족한 인스턴스 용량](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/troubleshooting-launch.html#troubleshooting-launch-capacity)을 참조하세요.

# 그래프 엔진 오류 메시지 및 코드
<a name="errors-engine-codes"></a>

Amazon Neptune 엔드포인트는 Gremlin 및 SPARQL에 대한 표준 오류가 발생하면 해당 오류를 반환합니다.

Neptune 관련 오류도 동일한 엔드포인트에서 반환될 수 있습니다. 이 섹션에는 Neptune 오류 메시지, 코드 및 권장 작업에 대한 설명이 나와 있습니다.

**참고**  
이 오류는 Neptune DB 클러스터 엔드포인트에만 해당됩니다. AWS SDK 및 AWS CLI로 Neptune 리소스를 생성하고 수정하기 위한 API에 서로 다른 일련의 공통 오류가 있습니다. 이러한 오류에 대한 자세한 내용은 [DB Cluster Management API 오류 메시지 및 코드](CommonErrors.md) 단원을 참조하십시오.

## 그래프 엔진 오류 형식
<a name="errors-format"></a>

Neptune 오류 메시지는 관련 HTTP 오류 코드와 JSON 형식의 응답을 반환합니다.

```
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."
}
```

## 그래프 엔진 쿼리 오류
<a name="errors-query"></a>

다음 표에는 오류 코드, 메시지 및 HTTP 상태가 포함되어 있습니다.

요청을 다시 시도해도 되는지 여부도 나타냅니다. 일반적으로 새 시도에 성공하지 못하면 요청을 다시 시도할 수 있습니다.


| 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. The client may retry the request presuming the logic in the query could be expected to succeed on a later attempt. As a result, the choice to retry will be query specific. | 
| InternalFailureException | 500 | No | 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 인증 오류
<a name="errors-iam-auth"></a>

이러한 오류는 IAM 인증이 활성화된 클러스터에만 해당됩니다.

다음 표에는 오류 코드, 메시지 및 HTTP 상태가 포함되어 있습니다.


| 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 '리전'. | 
| 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분.) | 
| Future Date | 403 | Signature not yet current: 20500224T213559Z is still later than 20181108T225925Z (20181108T225425Z \$1 5분.) | 
| Incorrect Date Format | 403 | Date must be in ISO-8601 'basic format'. Got 'date'. See [https://en.wikipedia.org/wiki/ISO_8601](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. | 

# DB Cluster Management API 오류 메시지 및 코드
<a name="CommonErrors"></a>

이러한 Amazon Neptune 오류는 AWS SDK 및 AWS CLI로 Neptune 리소스를 생성하고 수정하기 위한 API와 관련된 오류입니다.

다음 표에는 오류 코드, 메시지 및 HTTP 상태가 포함되어 있습니다.


| Neptune Service Error Code | HTTP status | Message | 
| --- |--- |--- |
| AccessDeniedException | 403 |  이 작업을 수행할 수 있는 충분한 액세스 권한이 없습니다.  | 
| IncompleteSignature | 400 |  요청 서명이 AWS표준을 준수하지 않습니다.  | 
| InternalFailure | 500 |  알 수 없는 오류, 예외 또는 장애 때문에 요청 처리가 실패했습니다.  | 
| InvalidAction | 400 |  요청된 동작 또는 작업이 유효하지 않습니다. 작업을 올바로 입력했는지 확인합니다.  | 
| InvalidClientTokenId | 403 |  제공된 X.509 인증서 또는 AWS 액세스 키 ID가 AWS의 레코드에 존재하지 않습니다.  | 
| InvalidParameterCombination | 400 |  함께 사용할 수 없는 파라미터가 함께 사용되었습니다.  | 
| InvalidParameterValue | 400 |  입력 파라미터로 잘못된 값 또는 범위를 벗어나는 값이 제공되었습니다.  | 
| InvalidQueryParameter | 400 |  입력 파라미터로 잘못된 값 또는 범위를 벗어나는 값이 제공되었습니다.  | 
| MalformedQueryString | 400 |  쿼리 문자열에 구문 오류가 있습니다.  | 
| MissingAction | 400 |  요청에서 작업 또는 필요한 파라미터가 누락되었습니다.  | 
| MissingAuthenticationToken | 403 |  요청은 유효한(등록된) AWS 액세스 키 ID 또는 X.509 인증서를 포함해야 합니다.  | 
| MissingParameter | 400 |  지정된 작업에 필요한 파라미터가 제공되지 않았습니다.  | 
| OptInRequired | 403 |  AWS 액세스 키 ID는 서비스에 대한 구독이 필요합니다.  | 
| RequestExpired | 400 |  요청이 요청상의 날짜 스탬프로부터 15분 이상 또는 요청 만료 날짜(예: 미리 서명된 URL용)로부터 15분 이상 경과한 후 서비스에 도달했거나 요청상의 날짜 스탬프가 앞으로 15분 이상 남아 있습니다.  | 
| ServiceUnavailable | 503 |  서버의 일시적 장애로 인해 요청이 실패했습니다.  | 
| ThrottlingException | 500 |  요청 제한 때문에 요청이 거부되었습니다.  | 
| ValidationError | 400 |  입력이 AWS 서비스에서 지정한 제약을 충족하지 않습니다.  | 

# Neptune 로더 오류 및 피드 메시지
<a name="loader-message"></a>

다음 메시지는 Neptune 로더의 `status` 엔드포인트에 의해 반환됩니다. 자세한 내용은 [Get-Status API](load-api-reference-status.md) 섹션을 참조하세요.

다음 표에는 로더 피드 코드 및 설명이 포함되어 있습니다.


| Error or Feed Code | Description | 
| --- |--- |
|  LOAD\$1NOT\$1STARTED  |  로드가 기록되었으나 시작되지 않았습니다.  | 
|  LOAD\$1IN\$1PROGRESS  |  로드가 진행 중임을 나타내며 현재 로드되고 있는 파일 수를 지정합니다. 로더는 파일을 구문 분석할 때 병렬로 로드할 청크를 하나 이상 생성합니다. 단일 파일에서 여러 청크가 생성될 수 있으므로, 이 메시지에 포함된 파일 수는 일반적으로 대량 로드 프로세스에서 사용되는 스레드 수보다 적습니다.  | 
|  LOAD\$1COMPLETED  |  로드가 오류 없이 완료되었거나 오류가 허용 임계값 범위에 듭니다.  | 
|  LOAD\$1CANCELLED\$1BY\$1USER  |  사용자가 로드를 취소했습니다.  | 
|  LOAD\$1CANCELLED\$1DUE\$1TO\$1ERRORS  |  오류로 인해 시스템이 로드를 취소했습니다.  | 
|  LOAD\$1UNEXPECTED\$1ERROR  |  예상치 못한 오류로 인해 로드에 실패했습니다.  | 
|  LOAD\$1FAILED  |  오류가 하나 이상 발생하여 로드에 실패했습니다.  | 
|  LOAD\$1S3\$1READ\$1ERROR  |  간헐적 또는 일시적 Amazon S3 연결 문제 때문에 피드에 실패했습니다. 피드 중 하나라도 이 오류를 수신할 경우 전체 로드 상태는 LOAD\$1FAILED로 설정됩니다.  | 
|  LOAD\$1S3\$1ACCESS\$1DENIED\$1ERROR  |  S3 버킷에 대한 액세스가 거부되었습니다. 피드 중 하나라도 이 오류를 수신할 경우 전체 로드 상태는 LOAD\$1FAILED로 설정됩니다.  | 
|  LOAD\$1COMMITTED\$1W\$1WRITE\$1CONFLICTS  |  해결되지 않은 쓰기 충돌로 로드된 데이터가 커밋되었습니다. 로더가 별도의 트랜잭션에서 쓰기 충돌 해결을 시도하고 로드가 진행될 때 피드 상태를 업데이트합니다. 최종 피드 상태가 LOAD\$1COMMITTED\$1W\$1WRITE\$1CONFLICTS일 경우에는 로드 재개를 시도하여 쓰기 충돌 없이 성공할 가능성이 높습니다. 일반적으로 쓰기 충돌은 불량 입력 데이터와 무관하지만 데이터 중복으로 쓰기 충돌 확률이 증가할 수 있습니다.  | 
|  LOAD\$1DATA\$1DEADLOCK  | Load was automatically rolled back due to deadlock. | 
|  LOAD\$1DATA\$1FAILED\$1DUE\$1TO\$1FEED\$1MODIFIED\$1OR\$1DELETED  |  로드 시작 후 파일이 삭제되었거나 업데이트되었기 때문에 피드가 실패했습니다.  | 
|  LOAD\$1FAILED\$1BECAUSE\$1DEPENDENCY\$1NOT\$1SATISFIED  |  종속성 검사가 실패하여 로드 요청이 실행되지 않았습니다.  | 
|  LOAD\$1IN\$1QUEUE  |  로드 요청이 대기열에 추가되어 실행 대기 중입니다.  | 
|  LOAD\$1FAILED\$1INVALID\$1REQUEST  |  요청이 잘못되어 로드가 실패했습니다(예: 지정된 원본/버킷이 없거나 파일 형식이 잘못되었을 수 있음).  | 