class Aws::DynamoDB::Types::TransactionCanceledException
The entire transaction request was canceled.
DynamoDB
cancels a `TransactWriteItems` request under the following circumstances:
-
A condition in one of the condition expressions is not met.
-
A table in the `TransactWriteItems` request is in a different account or region.
-
More than one action in the `TransactWriteItems` operation targets the same item.
-
There is insufficient provisioned capacity for the transaction to be completed.
-
An item size becomes too large (larger than 400 KB), or a local secondary index (LSI) becomes too large, or a similar validation error occurs because of changes made by the transaction.
-
There is a user error, such as an invalid data format.
DynamoDB
cancels a `TransactGetItems` request under the following circumstances:
-
There is an ongoing `TransactGetItems` operation that conflicts with a concurrent `PutItem`, `UpdateItem`, `DeleteItem` or `TransactWriteItems` request. In this case the `TransactGetItems` operation fails with a `TransactionCanceledException`.
-
A table in the `TransactGetItems` request is in a different account or region.
-
There is insufficient provisioned capacity for the transaction to be completed.
-
There is a user error, such as an invalid data format.
<note markdown=“1”> If using Java, DynamoDB
lists the cancellation reasons on the `CancellationReasons` property. This property is not set for other languages. Transaction cancellation reasons are ordered in the order of requested items, if an item has no error it will have `NONE` code and `Null` message.
</note>
Cancellation reason codes and possible error messages:
-
No Errors:
-
Code: `NONE`
-
Message: `null`
-
-
Conditional Check Failed:
-
Code: `ConditionalCheckFailed`
-
Message: The conditional request failed.
-
-
Item Collection Size Limit Exceeded:
-
Code: `ItemCollectionSizeLimitExceeded`
-
Message: Collection size exceeded.
-
-
Transaction Conflict:
-
Code: `TransactionConflict`
-
Message: Transaction is ongoing for the item.
-
-
Provisioned Throughput Exceeded:
-
Code: `ProvisionedThroughputExceeded`
-
Messages:
-
The level of configured provisioned throughput for the table was exceeded. Consider increasing your provisioning level with the UpdateTable API.
<note markdown=“1”> This Message is received when provisioned throughput is exceeded is on a provisioned
DynamoDB
table.</note>
-
The level of configured provisioned throughput for one or more global secondary indexes of the table was exceeded. Consider increasing your provisioning level for the under-provisioned global secondary indexes with the UpdateTable API.
<note markdown=“1”> This message is returned when provisioned throughput is exceeded is on a provisioned GSI.
</note>
-
-
-
Throttling Error:
-
Code: `ThrottlingError`
-
Messages:
-
Throughput exceeds the current capacity of your table or index.
DynamoDB
is automatically scaling your table or index so please try again shortly. If exceptions persist, check if you have a hot key: docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-design.html.<note markdown=“1”> This message is returned when writes get throttled on an On-Demand table as
DynamoDB
is automatically scaling the table.</note>
-
Throughput exceeds the current capacity for one or more global secondary indexes.
DynamoDB
is automatically scaling your index so please try again shortly.<note markdown=“1”> This message is returned when when writes get throttled on an On-Demand GSI as
DynamoDB
is automatically scaling the GSI.</note>
-
-
-
Validation Error:
-
Code: `ValidationError`
-
Messages:
-
One or more parameter values were invalid.
-
The update expression attempted to update the secondary index key beyond allowed size limits.
-
The update expression attempted to update the secondary index key to unsupported type.
-
An operand in the update expression has an incorrect data type.
-
Item size to update has exceeded the maximum allowed size.
-
Number overflow. Attempting to store a number with magnitude larger than supported range.
-
Type mismatch for attribute to update.
-
Nesting Levels have exceeded supported limits.
-
The document path provided in the update expression is invalid for update.
-
The provided expression refers to an attribute that does not exist in the item.
-
-
@!attribute [rw] message
@return [String]
@!attribute [rw] cancellation_reasons
A list of cancellation reasons. @return [Array<Types::CancellationReason>]
@see docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/TransactionCanceledException AWS API Documentation
Constants
- SENSITIVE