Isolatieniveaus, savepoints en rollbacks

Transacties en foutafhandeling in PostgreSQL

Jason Myers

Instructor

Isolatieniveaus

Isolatieniveau Dirty Read Nonrepeatable Read Phantom Read Serialisatie-anomalie
Read Uncommitted Beschermd (PostgreSQL) kwetsbaar kwetsbaar kwetsbaar
Read Committed Beschermd kwetsbaar kwetsbaar kwetsbaar
Repeatable Read Beschermd Beschermd Beschermd (PostgreSQL) kwetsbaar
Serializable Beschermd Beschermd Beschermd Beschermd
Transacties en foutafhandeling in PostgreSQL

Repeatable Read

  • SERIALIZABLE

    • Simuleert seriële uitvoering voor alle gecommitte transacties.
  • REPEATABLE READ

    • Ziet data
      • gecommit vóór de transactie begon
      • resultaten van eerdere statements in de transactie
    • Ziet geen wijzigingen die gelijktijdige transacties committen.
Transacties en foutafhandeling in PostgreSQL

REPEATABLE READ visualiseren

REPEATABLE READ-diagram

Transacties en foutafhandeling in PostgreSQL

REPEATABLE READ visualiseren

REPEATABLE READ-diagram

Transacties en foutafhandeling in PostgreSQL

REPEATABLE READ visualiseren

REPEATABLE READ-diagram

Transacties en foutafhandeling in PostgreSQL

REPEATABLE READ

START TRANSACTION ISOLATION LEVEL REPEATABLE READ;

UPDATE inventory SET quantity = quantity - 4 WHERE name = 'macaron'; SAVEPOINT first;
UPDATE inventory SET quantity = quantity - 12 SAVEPOINT second; COMMIT;
Transacties en foutafhandeling in PostgreSQL

Laten we oefenen!

Transacties en foutafhandeling in PostgreSQL

Preparing Video For Download...