C100DBA Application Administration Practice Question
A financial application requires that read operations never return data that could later be rolled back, even if it means reading from a secondary. The application connects to a replica set with readPreference=secondary. Which read concern level should be used to guarantee that the data read has been acknowledged by a majority of replica set members and cannot be rolled back?
⚠ Common exam trap
The trap here is assuming that linearizable read concern can be used with secondary reads, when in fact it is restricted to primary reads only.
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
✓
readConcern: { level: "majority" }
majority read concern guarantees that the data read has been acknowledged by a majority of replica set members, making it durable and not subject to rollback. It can be used with readPreference=secondary, allowing the application to read from secondaries while still ensuring that the data is majority-committed. linearizable is stronger but only works with primary reads.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
readConcern: { level: "local" }
Why it's wrong here
local read concern returns data from the queried instance without guaranteeing that the data has been acknowledged by a majority of replica set members. With readPreference=secondary, it is possible to read data that may later be rolled back if the secondary has not yet replicated the latest writes. This does not meet the requirement of avoiding rollback.
- ✗
readConcern: { level: "available" }
Why it's wrong here
available read concern is similar to local but provides even weaker consistency guarantees, especially in sharded clusters. It does not wait for any acknowledgment from other members and can return data that might be rolled back. It is intended for applications that can tolerate eventual consistency and is not suitable for the financial scenario.
- ✓
readConcern: { level: "majority" }
Why this is correct
majority read concern ensures that the data returned has been acknowledged by a majority of replica set members and is therefore durable and cannot be rolled back. When combined with readPreference=secondary, it allows reading from a secondary while still providing the guarantee that the data is majority-committed. This matches the requirement to avoid rollback.
- ✗
readConcern: { level: "linearizable" }
Why it's wrong here
linearizable read concern provides the strongest consistency guarantee, ensuring that reads reflect all successful writes that completed before the read began. However, it can only be used with readPreference=primary and does not support reading from secondaries. Since the application uses readPreference=secondary, this option is invalid and would cause an error.
About these practice questions
This C100DBA question is part of Courseiva's 222-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official MongoDB exam blueprint
This C100DBA practice question is part of Courseiva's free MongoDB 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 C100DBA exam.