Bird
Raised Fist0

Examine this Kafka producer configuration snippet:

medium📝 Debug Q6 of Q15
Kafka - Message Delivery Semantics

Examine this Kafka producer configuration snippet:

props.put("enable.idempotence", "true");
props.put("acks", "1");
props.put("retries", 5);

What is the issue if the goal is to guarantee idempotent message delivery?

ASetting <code>acks</code> to "1" can cause message duplication despite idempotence.
BThe <code>retries</code> value is too low for idempotence.
CThe <code>enable.idempotence</code> value should be boolean true, not string.
DThere is no issue; this configuration guarantees idempotence.
Step-by-Step Solution
Solution:
  1. Step 1: Understand idempotence requirements

    Idempotence requires acks=all to ensure the broker fully commits messages.
  2. Step 2: Analyze acks setting

    Setting acks=1 means leader only, risking duplicates if leader fails before replication.
  3. Step 3: Check other settings

    retries=5 is acceptable; enable.idempotence as string "true" is correct.
  4. Final Answer:

    Setting acks to "1" can cause message duplication despite idempotence. -> Option A
  5. Quick Check:

    Idempotence requires acks=all [OK]
Quick Trick: Idempotence needs acks=all, not acks=1 [OK]
Common Mistakes:
MISTAKES
  • Assuming acks=1 is sufficient for idempotence
  • Confusing string and boolean values
  • Thinking retries count affects idempotence directly

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Kafka Quizzes