Common DynamoDB Errors
(and Solutions)

List of DynamoDB Error Codes (and What They Mean)

DynamoDB Errors can be divided into two categories: 4xx, aka you did something wrong, and 5xx aka problem is on AWS side.

Error - Status Code 5xx - AWS Problem

5xx status code indicates a problem that must be resolved by Amazon. This might be a temporary error, in which case you can retry your request until it succeeds. You can also check the AWS Service Health Dashboard and see if there are any operational issues with the DynamoDB service in your region.

Error - Status Code 4xx - Problem with your request

Unlike 5xx, 4xx status code means that your request failed validation, was not permitted or exceeded some limits. Some of the 4xx errors are thrown because of the temporary table state, e.g. it's not ready and they can be retried later. Below you can find a list of the most popular 4xx errors with a short explanation.

  • AccessDeniedException - The request was signed with incorrect signature
  • IncompleteSignatureException - The request was signed with incomplete signature
  • LimitExceededException - You exceeded the limit of 50 tables and indexes being in created, updated or deleted
  • ResourceNotFoundException - The request was made against a table that does not exists
  • ValidationException - The request failed validation

DynamoDB Error Handling The Right Way

Rule of the thumb is to always wrap DynamoDB operations with "try-catch" and handle any operation failures gracefully.
Apart from that, DynamoDB SDKs deal with many errors and retries internally. You don't have to write automatic retrying because that's already handled by AWS using exponential backoff algorithm with jitter (randomized delay).

If you want to customize your SDK behavior around retries, you can do that by providing custom ClientConfiguration.

Dynobase is a Professional GUI Client for DynamoDB

Start your 7-day free trial today

Product Features

© 2020 Dynobase