Courseiva
Question 770 of 724
Troubleshooting and OptimizationhardMultiple ChoiceObjective-mapped

DVA-C02 Troubleshooting and Optimization Practice Question

A Lambda function using a Kinesis event source repeatedly retries one bad record and blocks progress in the shard. Which feature helps isolate failed records after retry limits?

⚠ Common exam trap

A common mix-up: candidates think increasing memory or disabling batch processing will solve the blocking issue, but they fail to recognize that only explicit failure handling with bisect and a dead-letter destination can isolate and remove the bad record without manual intervention.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Configure failure handling with bisect batch on error and an on-failure destination where supported

Lambda's Kinesis event source mapping supports a 'bisect batch on error' feature that splits a failed batch into two smaller batches, allowing the bad record to be isolated and retried separately. Additionally, configuring an on-failure destination (e.g., an SQS queue or SNS topic) sends the record to a dead-letter destination after the retry limit is exhausted, preventing the shard from blocking progress.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Increase memory to 10 GB only

    Why it's wrong here

    Increasing a Lambda function's memory allocation primarily enhances its computational capacity and allows it to process larger datasets in memory or execute more complex logic faster. While this might prevent timeouts or out-of-memory errors for a healthy batch, it does not directly address the problem of repeated failures caused by specific malformed records within a Kinesis stream batch. It lacks a mechanism to identify, isolate, and reprocess or discard problematic individual records, leading to continued processing issues if a bad record persists.

  • Disable batch processing

    Why it's wrong here

    Disabling batch processing for a Kinesis event source by setting the batch size to 1 would indeed ensure that each record is processed individually. While this isolates failures to a single record, it drastically increases the number of Lambda invocations, leading to higher operational costs and potentially reduced throughput. Furthermore, processing one record at a time does not inherently provide a mechanism to handle the *failure* of that single record; the function would still fail, and the problematic record would continue to block progress without a dedicated error destination.

  • Configure failure handling with bisect batch on error and an on-failure destination where supported

    Why this is correct

    Configuring `ReportBatchItemFailures` (often referred to as "bisect batch on error" in the console) for a Kinesis event source allows the Lambda function to return a partial success, indicating which specific records within a batch failed. Lambda then automatically retries only the failed records, potentially splitting the batch further to isolate the problematic items. Combining this with an on-failure destination, such as an SQS queue or SNS topic, ensures that records that ultimately cannot be processed are sent to a dead-letter queue for analysis and manual intervention, preventing them from indefinitely blocking the stream processing.

  • Convert the stream to an S3 bucket

    Why it's wrong here

    Converting a Kinesis Data Stream to an S3 bucket represents a fundamental architectural change, shifting from a real-time streaming paradigm to an object storage model. While Kinesis data can be delivered to S3 via Kinesis Firehose for archival or batch processing, replacing the stream entirely with S3 would eliminate the real-time, low-latency processing capabilities inherent to Kinesis. This option does not address the problem of handling individual record failures within a streaming context; instead, it redefines the entire data ingestion and processing pipeline, which is not what the question implies.

Quick reference

Cloud Service Model Comparison

ModelYou ManageProvider ManagesExamples
IaaSOS, runtime, apps, dataHardware, hypervisor, networkingEC2, Azure VMs, GCP Compute Engine
PaaSApps and dataOS, runtime, middleware, hardwareElastic Beanstalk, Azure App Service
SaaSData and settings onlyEverything elseMicrosoft 365, Salesforce, Workday
FaaS / ServerlessFunction code onlyInfra, scaling, runtimeLambda, Azure Functions, Cloud Run
CaaSContainers and appsKubernetes, OS, hardwareEKS, AKS, GKE

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Last reviewed: Jun 11, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This DVA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DVA-C02 exam.