Concurrency-control options often differ by one operation, one commit state, or one protocol guarantee. If you remember only that transactions run together, you can still confuse read-read with read-write, dirty read with lost update, and serializability with deadlock freedom.
Choose an option and commit to it before revealing each explanation. Four rules carry most of the set: a read-read pair never conflicts, a dirty read needs an uncommitted write, a lost update needs two writes on one item, and conflict serializability says nothing about deadlock freedom. Those four settle Questions 3, 4, 5, 7 and 9. The DBMS MCQ hub collects practice across the rest of the subject.
1. Concurrency control basics: lost update, dirty read and the conflict rule
Start with five terms that do most of the work:
Term | Minimum meaning |
|---|---|
Transaction | A logical unit of work |
Conflicting operations | Operations from different transactions on the same item, with at least one write |
Serial schedule | One transaction finishes before the next begins |
Concurrent schedule | Operations from transactions are interleaved |
Concurrency control | Safe overlap that preserves a correct database result |
Now calculate a lost update. Stock item A starts at 100. T1 sells 20, while T2 sells 30. An uncontrolled schedule is r1(A)=100, r2(A)=100, w1(A)=80, w2(A)=70. The database stores 70. Either serial order gives 100 - 20 - 30 = 50, so T2 has overwritten T1's update.
A dirty read is different. Balance B=5000. T1 writes B=3500 without committing, T2 reads 3500, and then T1 aborts and restores 5000. T2 used a value that never became valid.
Use this four-case check in Question 3: R1(A), R2(A) is the only non-conflicting pair. R1(A) with W2(A), W1(A) with R2(A), and W1(A) with W2(A) all conflict, because each contains a write. For a second set built on the same anomalies, work through DBMS Concurrency Problems MCQs once you have finished this one.
2. Concurrency Control MCQs 1-2: purpose and schedule relationships
Question 1
What is the primary goal of concurrency control in DBMS?
A. To ensure that multiple transactions can execute concurrently without violating database consistency
B. To speed up database queries by allowing transactions to overlap
C. To allow only one transaction to be executed at a time
D. To guarantee that all transactions will complete anyhow
Correct answer: A. To ensure that multiple transactions can execute concurrently without violating database consistency.
Overlap is acceptable only when the result matches a correct serial outcome, 50 rather than the uncontrolled 70. Speed may improve, but correctness is the goal, and a protocol may abort or restart a transaction.
Attempt the goal-of-concurrency-control question
Question 2
Which of the following statement is true about schedules?
A. Every conflict serializable schedule is view serializable
B. Every view serializable schedule is conflict serializable
C. Both (a) and (b)
D. A schedule can be either only conflict serializable or only view serializable
Correct answer: A. Every conflict serializable schedule is view serializable.
Conflict-serializable schedules are a subset of view-serializable schedules, so A holds but its reverse does not. For w1(A=90), w2(A=80), w1(A=70), edges T1 -> T2 and T2 -> T1 form a cycle, yet no reads and final writer T1 make it view-equivalent to serial order T2, T1.
Attempt the conflict versus view serializability question
3. Concurrency Control MCQs 3-4: conflicts and dirty reads
Question 3
Consider concurrent execution of two transactions T1 and T2 in a DBMS, both of which access a data object A. For these two transactions to not conflict on A, which one of the following statements must be true?
A. Both T1 and T2 only read A
B. T1 reads A and T2 writes A
C. T1 writes A and T2 reads A
D. Both T1 and T2 write A
Correct answer: A. Both T1 and T2 only read A.
Every option pairs two different transactions on the same object A, so the deciding factor is the operation mix. Only option A is read-read; B, C, and D each contain a write, so each of those pairs conflicts.
Attempt the conflict-on-A question
Question 4
What is dirty read in the context of transaction processing?
A. A transaction reads data that was modified by another transaction but not yet committed
B. A transaction reads data that is in a buffer but not written to disk
C. A transaction reads data after it has been committed
D. A transaction overwrites data that another transaction has already updated, with neither transaction aware of the other's change
Correct answer: A. A transaction reads data that was modified by another transaction but not yet committed.
At B=5000, T1 writes uncommitted 3500, T2 reads it, and T1 aborts. The issue is another transaction's uncommitted change, not disk buffering. C is a committed read, while D describes a lost update.
Attempt the dirty read definition question
4. Concurrency Control MCQs 5-6: lost updates and atomic memory operations
Question 5
Which of these anomalies is also known as WW (Write-Write) conflict?
A. Dirty Read
B. Unrepeatable Read
C. Lost Update
D. Write Update
Correct answer: C. Lost Update.
WW means two writes affect the same item. In w1(A)=80, w2(A)=70, the later write removes the earlier one's effect. A dirty read uses uncommitted data, while an unrepeatable read returns different committed values across two reads.
Attempt the write-write conflict question
Question 6
____ is a sequence of memory read-write operations that are atomic.
A. Critical section object
B. Adaptive mutex
C. Turnstile
D. Memory transaction
Correct answer: D. Memory transaction.
Atomic means all-or-nothing visibility. Changing (x,y) from (5,8) to (6,7) exposes either complete pair, never partial (6,8). A mutex or turnstile may coordinate access, but neither names this atomic sequence.
Attempt the atomic memory operation question
5. Concurrency Control MCQs 7-8: multi-user updates and optimistic concurrency control
Question 7
Concurrency control in RDBMS is important for which of the following reasons?
A. To ensure data integrity when reads occur to the database in a multi-user environment.
B. To ensure data integrity when updates occur to the database in a single-user environment.
C. To ensure data integrity when updates occur to the database in a multi-user environment.
D. To ensure data integrity when reads occur to the database in a single-user environment.
Correct answer: C. To ensure data integrity when updates occur to the database in a multi-user environment.
The risk appears when multiple users update shared data concurrently. Both stock transactions read 100, then write 80 and 70, losing one update. Single-user execution has no inter-transaction interference, while read-only overlap creates no write anomaly.
Attempt the multi-user integrity question
Question 8
Which of the following is an optimistic concurrency control method?
A. Validation based
B. Time stamp ordering
C. Lock-based
D. None of these
Correct answer: A. Validation based.
An optimistic protocol lets a transaction run to completion on private copies and only tests for interference at the end, in a validation phase; failing validation rolls the transaction back and restarts it. Timestamp ordering checks the order at every read and write, and lock-based protocols block a conflicting access before it happens, so both act early rather than optimistically.
Attempt the optimistic concurrency control question
6. Concurrency Control MCQs 9-10: protocol guarantees and shared locks
Question 9
Which of the following concurrency control protocols ensure(s) both conflict serializability and freedom from deadlock?
I. 2-phase locking
II. Timestamp ordering
A. I only
B. II only
C. Both I and II
D. Neither I nor II
Correct answer: B. II only.
Plain 2-phase locking is conflict serializable but can deadlock. If T1 holds X(A) and T2 holds X(B), then each requests the other's item, forming a wait cycle. Basic timestamp ordering aborts or restarts on violations instead of waiting, making it conflict serializable and deadlock-free.
Attempt the deadlock-freedom protocol question
Question 10
If transaction A holds a shared lock R and if transaction B also requests for a shared lock on R, it will
A. result in a deadlock situation
B. immediately be granted
C. immediately be rejected
D. be granted as soon as it is released by A
Correct answer: B. immediately be granted.
Shared locks are compatible because both transactions read R. Held S plus requested S means grant; held S plus requested X means wait; held X plus requested S or X means wait. B need not wait for A to release its shared lock.
Attempt the shared lock request question
7. Diagnose the mistakes, then choose the next DBMS practice step
Map every wrong answer onto one of the five areas below, then re-derive only that rule.
Area to review | Questions |
|---|---|
Goal and schedule sets | Q1-Q2 |
Operation conflicts | Q3 |
Dirty read versus lost update | Q4-Q5 |
Atomicity and multi-user integrity | Q6-Q7 |
Protocol families and lock guarantees | Q8-Q10 |
Suppose you miss Q2, Q4, and Q9. You score 10 - 3 = 7, or 7/10. Your error log should name the three gaps: conflict serializable is a subset of view serializable, a dirty read uses an uncommitted value, and serializable does not automatically mean deadlock-free.
Do not reread everything. Redraw the graph for w1(A=90), w2(A=80), w1(A=70), replay B=5000 -> 3500 -> abort -> 5000, and rebuild the wait cycle from T1:X(A), T2:X(B). Then reattempt only Q2, Q4, and Q9 before moving to DBMS transaction MCQs.
Next, use GATE Guidance by Sanchit Sir for a structured GATE CS path, or CS Fundamentals for Placements if the DBMS you need is core CS revision for placement rounds.




