What Happens to an S3 Event When Lambda Times Out with Default Settings?
Short answer
D The S3 event is discarded after the event is retried twice.
Question
Key Takeaways
The exam tests the default retry-and-discard behavior of asynchronous Lambda invocations — the trap is assuming a Dead Letter Queue or endless retries exist by default.
Amazon S3 invokes Lambda asynchronously, and with default settings Lambda retries a failed event twice (three total attempts) before discarding it. The community consensus is answer D, backed by AWS documentation on asynchronous error handling.
Common mistake: Many candidates choose B because they assume Lambda ships with a default Dead Letter Queue; in reality, a DLQ (or on-failure destination) must be explicitly configured, so with defaults the event is simply discarded after two retries.
Expert Analysis
Why the Answer Is Correct
Amazon S3 invokes Lambda asynchronously, and for asynchronous invocations Lambda automatically retries the event twice more (a total of three attempts) with a delay of one to two minutes between attempts. If the function still fails after these retries and no Dead Letter Queue or on-failure destination is configured, Lambda discards the event. This matches option D exactly. Community comment [1] (5 likes) spells out this behavior clearly, and comment [2] links the official AWS documentation confirming it.
Why the Other Options Are Wrong
Option A is wrong because Lambda does not send SNS email notifications for failed events by default; you would have to explicitly configure a destination such as SNS. Option B is wrong because there is no default Dead Letter Queue — a DLQ must be deliberately configured on the function. Option C is wrong because Lambda does not retry indefinitely; asynchronous invocations are limited to exactly two retries before the event is dropped. Only D reflects the true default behavior.
Community Comment Notes
The community is unanimous that D is correct. Comment [1], the most upvoted, explains that Lambda makes two additional attempts (three total) and then discards the event when no DLQ or destination exists. Comment [2] reinforces this with a direct citation of the AWS Lambda developer guide on asynchronous invocation error handling, which is the authoritative source for this behavior.
Official Reference
https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-error-handling.html
This link opens the official vendor documentation in a new tab.
Exam Strategy
Memorize the default behavior of asynchronous invocations (S3, SNS, EventBridge): two automatic retries, then the event is discarded unless a DLQ or on-failure destination was explicitly configured. When a question says 'default settings,' rule out any option involving DLQs, SNS emails, or infinite retries. This pattern appears frequently in DVA-C02, so knowing '2 retries then discard' earns quick points.
Discussion 3 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 3
-
stevesuperdx 👍 5D This means that Lambda will make two additional attempts to process the event (a total of three attempts). If the function still fails after the retries, and if no Dead Letter Queue (DLQ) or on-failure destination is configured, the event is discarded.
-
8621a7c 👍 2D https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-error-handling.html#:~:text=Lambda%20manages%20your%20function's%20asynchronous,the%20second%20and%20third%20attempts.
-
tullio85 👍 1answer D
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.
Related Analysis
Practice All DVA-C02 Questions
Access 100 questions with complete answers and detailed explanations.
View Full DVA-C02 Practice Test →