Isolation Level
আইসোলেশন লেভেল
Concurrent transaction একে অন্যকে কতটা 'দেখবে' তার মাপকাঠি — read phenomena থেকে বাঁচার ধাপ-ধাপ চুক্তি।
also: transaction-isolation-level
| Level | Dirty read | Non-repeatable | Phantom | Lost update |
|---|---|---|---|---|
| READ UNCOMMITTED | হয় | হয় | হয় | হয় |
| READ COMMITTED | না | হয় | হয় | হয় |
| REPEATABLE READ | না | না | (PG: না) | হয় |
| SERIALIZABLE | না | না | না | না |
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
- SQL standard-এর phantom gap PostgreSQL-এ নেই — MVCC snapshot-এ phantoms-ও আটকায়; কিন্তু write skew থেকেই যায়, SSI-ই ওটা ধরে
- MySQL InnoDB default RR + next-key locking — implementation-এর গন্ধ level-এর সংজ্ঞায় ঢুকে যায়
- Higher isolation = fewer anomalies, more abort/retry — বিনামূল্য কিছু নেই
Phenomenon চেনা মানেই bug report পড়ে কোন level-এর অপরাধ তা চিনতে পারা।