Common DynamoDB Errors
(and Solutions)
Common DynamoDB Errors is a compilation of some of the most common Amazon DynamoDB errors and how to fix them.
- Unable to start DynamoDB Local process
- ConfigError: Missing region in config
- DynamoDB Key element does not match the schema
- DynamoDB ConditionalCheckFailedException
- DynamoDB ValidationException: Query condition missed key schema element
- DynamoDB Invalid UpdateExpression Syntax Error Token
- sls dynamodb install not working
- DynamoDB Internal Server Error
- AWS DynamoDB errors ResourceNotFoundException
- ImportError: No module named boto3 (DynamoDB)
- AWS DynamoDB CredentialsError: Missing credentials in config
- DynamoDB Network Error: self signed certificate in chain
- ValidationException: Invalid KeyConditionExpression: Attribute name is a reserved keyword;
- ExpressionAttributeValues contains invalid value: One or more parameter values were invalid: An AttributeValue may not contain an empty string
- Error ValidationException: One or more parameter values were invalid: Type mismatch for key X expected: S actual: M
- One or more parameter values were invalid: some AttributeDefinitions are not used
- dynamodb getItem() is not a function
- missing required key 'key' in params dynamodb
- failed to begin subsegment named 'amazondynamodbv2': segment cannot be found.
- dynamodb: one or more parameter values were invalid: type mismatch for index key
- an expression attribute name used in the document path is not defined
- com amazonaws services dynamodbv2 model resourcenotfoundexception
- accessdeniedexception dynamodb
- aws.dynamodb.converter.unmarshall not working
- dynamodb atomic counter not working
- dynamodb put function not working
- 'dynamodb' object has no attribute 'table'
- why is the GSI dynamodb not showing item count
- dynamodb query not returning the full item
- is not authorized to perform dynamodb:* on resource
- Float types are not supported. Use decimal types instead.
- aws.dynamodb.documentclient is not a constructor
- dynamodb put item not working
- requested resource not found aws dynamodb
- dynamodb ttl not deleting / erasing items
- could not unconvert attribute dynamodb
- dynamodb query key condition not supported
- dynamodb connection timeout
- ProvisionedThroughputExceededException DynamoDB
- dynamodb list_append if_not_exists not working
- dynamodb list_append returns true but does not work
- could not connect to the endpoint URL dynamodb
- could not unmarshal the value dynamodb
- dynamodb does not accept empty set
- dynamodb mapper save not persisting
- dynamodb-admin command not found
- failed to list tables not authorized dynamodb
- name key is not defined dynamodb
- Boto3 DynamoDB KeyError
- DynamoDB Update Not Working
- DynamoDB Scan Not Working
- DynamoDB Delete Not Working
- DynamoDB FilterExpression Not Working
- DynamoDB Query Limit Not Working
- DynamoDB TTL Not Working
- KMS Key Access Denied Error DynamoDB
- DynamoDB Errors InvalidSignatureException Signature Expired
- AWS Lambda DynamoDB Stream Error
- Conditional Update Error DynamoDB
- CORS Error DynamoDB
- AWS CLI DynamoDB Error Parsing Parameter
- DynamoDB - The Security Token Included In The Request Is Invalid
- boto3 dynamodb unable to locate credentials
- could not lookup table in dynamodb
- dynamodb 1 validation error detected value
- dynamodb botocore.exceptions.nocredentialserror unable to locate credentials
- dynamodb cannot assign requested address
- dynamodb cannot convert undefined to object
- dynamodb cannot create preexisting table
- dynamodb cannot read properties of undefined
- dynamodb cannot read property '0' of undefined
- dynamodb cannot read property 'push' of undefined
- dynamodb cannot read property 's' of undefined
- dynamodb converter not found for enhancedtype
- dynamodb could not instantiate class
- dynamodb docker unable to open database file
- dynamodb does not support null values
- DynamoDB Duplicate Key Error
- DynamoDB Error 413
- DynamoDB Error All Attributes Must Be Indexed
- DynamoDB Expression Not Null
- DynamoDB Failed To Compute Node presentation
- DynamoDB failedbatch retry
- DynamoDB Not Supported Requires @DynamoDBTyped Or @DynamoDBTypeConverted
- DynamoDB Is Not Null
- DynamoDB Is Unsupported It Cannot Be Instantiated
- DynamoDB Item Does Not Exist
- DynamoDB Local Cannot Create Preexisting Table
- DynamoDB Local Docker Not Working
- DynamoDB Local NoClassDefFoundError
- DynamoDB Mapper Could Not Instantiate Class
- DynamoDB No Provisioned Throughput specified for the table
- DynamoDB No Regionendpoint Or Serviceurl Configured
- dynamodb the table does not have the specified index
- dynamodb condition does not exist
- dynamodb the parameter cannot be converted to a numeric value
- dynamodb index does not exist
- dynamodb no range key value present
- dynamodb consistent reads are not supported on global secondary indexes
- dynamodb the parameter cannot be converted to a numeric value NaN
- dynamodb exclusivestartkey not working
- dynamodb index not found
- dynamodb could not connect to the endpoint url
- dynamodb stream missing fields
- dynamodb item size limit error
- dynamodb attribute does not exist
- dynamodb local could not load credentials from any providers
- dynamodb table not exists
- dynamodb problem function call failed
- dynamodb property projection cannot be empty
- dynamodb query is not null
- dynamodb query is null
- dynamodb request is missing authentication token
- dynamodb system errors metric
- dynamodb table did not stabilize
- dynamodb unable to execute http request
- dynamodb unable to locate credentials
- dynamodb unable to parse base64 string
- dynamodb validation error detected
- dynamodb is abstract cannot be instantiated
- error dynamodb streams must be enabled on the table
- error retrieving dynamodb table item serializationexception
- moto dynamodb not working
- dynamodb local unable to open database file
- dynamodb number_value cannot be converted to string
- dynamodb could not load credentials from any providers
- localstack dynamodb not working
- dynamodb global secondary index does not project
- dynamodb scan missing values
- dynamodb update fail if not exists
- dynamodb global secondary index not working
- error updating dynamodb table time to live
- dynamodb-admin is not recognized as an internal or external command
- a bytes-like object is required not binary dynamodb
- a socket operation was attempted to an unreachable network dynamodb
- can't pickle thread.lock objects typeerror boto3 python dynamodb
- dynamodb localhost not working
- dynamodb-admin not working
- dynamodb unknown error
- dynamodb throughput error
- dynamodb unable to locate property for key attribute
- dynamodb streams missing events
- dynamodb value cannot be null. (parameter 'type')
- DynamoDB is missing the key id in the item
- Dynamodb error 500
- DynamoDB string set cannot be empty
- Error retrieving DynamoDB table item validation exception
- Could not connect to the endpoint URL https:dynamodb.singapore.amazonaws.com
- DynamoDB GetItem no item
- DynamoDB table not updating
- DynamoDB batch write is not working
- DynamoDB throttling error
- DynamoDB BatchSave not working
- DynamoDB error 400
- DynamoDB scan does not return all items
- DynamoDB stream lambda error
- DynamoDB string set may not be empty
- DynamoDB type is not supported
- DynamoDB local error unable to access JAR file dynamodblocal.jar
- DynamoDB local error spawn java ENOENT
- DynamoDB FilterExpression not working
- DynamoDB attribute not empty
- DynamoDB could not invoke null on class
- DynamoDB ConditionExpression not working
- DynamoDB aliasing is not supported
- DynamoDB consistent read not working
- DynamoDB console unable to delete this item
- DynamoDB Contains not working
- DynamoDB validation error
- DynamoDB stream not working
- DynamoDB missing items
- DynamoDB Get not found
- DynamoDB is not showing all columns
- DynamoDB no attribute schema defined
- DynamoDB parameter validation failed
- DynamoDB sorting is not supported for scan expressions
- DynamoDB query is slow
- DynamoDB BatchWriteItem error
- DynamoDB stream no records processed
- DynamoDB scan filter not working
- DynamoDB delete fails
- DynamoDB cannot do operations on a non-existent table
- DynamoDB scan filter expression not working
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 exist
- ValidationException - The request failed validation
DynamoDB Error Handling The Right Way
The 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 an 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.