user1846749
user1846749

Reputation: 2535

DynamoDB TTL - when Items are removed

Does dynanodb has a limitation taking upto 48 hours to delete expired rows ? http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/howitworks-ttl.html

Since I want to execute a Lambda when a row is deleted from dynamo db table, so that means my lambda trigger can take upto 48 hours ?

Upvotes: 17

Views: 26134

Answers (2)

Diego Rojas
Diego Rojas

Reputation: 234

Commonly takes 24 - 48 hours to be deleted, but keep in mind those items with expired TTL could still appearing in queries and scans. To avoid "phantom reads" you can use a Filter Expression to check if the TTL value is greater than current date.

More info in the docs.

Upvotes: 5

Charlie Fish
Charlie Fish

Reputation: 20526

Yes according to the link you sent.

DynamoDB typically deletes expired items within 48 hours of expiration. The exact duration within which an item truly gets deleted after expiration is specific to the nature of the workload and the size of the table. Items that have expired and not been deleted will still show up in reads, queries, and scans.

If you have a Lambda trigger on delete it will happen on delete which could be within 48 hours of expiration (according to the link you sent).

Upvotes: 26

Related Questions