/ config

Settings

Theme
Language

Lesson text

Pick a typeface and size that make long lessons comfortable to read.
Font
Size
16px

Code text

consumer.subscribe(topics)
Font
Size
14px

Progress

Free readingUnlock every lesson and hide progress
ResourcesGitHub repositorycourse source code→
/ contents

Course outline

0 / 63 (0%)
    1. 01Transactions and ACID25m
    2. 02The MVCC mental model25m
    3. 03Row locks and lost updates25m
    4. 04Isolation levels in practice25m
    5. 05Retrying on 4000120m
    6. 06Deadlocks and advisory locks25m
HomeGitHub repository
06/ 11·6 lessons·2 h 25 min

Transactions

How Postgres behaves under concurrency: ACID and transactions, an MVCC mental model (visible xmin/xmax), row locks and lost updates, isolation levels in practice, retries on 40001, and deadlocks with advisory locks.

Start module→Continue · Transactions and ACID→Reread module→Next module →
Progress0 / 6
0%
Lessons
6
Duration
2 h 25 min
Stack
Go
/ lessons

Lessons

6 lessons · 2 h 25 min
  1. 01✓Transactions and ACID↳ continue from here#transactions#acid#atomicity25m→
  2. 02✓The MVCC mental model↳ continue from here#mvcc#transactions#snapshot25m→
  3. 03✓Row locks and lost updates↳ continue from here#locks#for-update#skip-locked25m→
  4. 04✓Isolation levels in practice↳ continue from here#isolation#serializable#write-skew25m→
  5. 05✓Retrying on 40001↳ continue from here#40001#retry#serializable20m→
  6. 06✓Deadlocks and advisory locks↳ continue from here#deadlock#40P01#advisory-lock25m→
← Previous moduleQuerying across tablesNext module →Indexing and EXPLAIN