ChaosSQL

Validação Empírica de Isolamento

Matriz Hermitage de Isolamento SQL

Comparação empírica dos limites reais de isolamento transacional entre SQLite, PostgreSQL e MySQL através de fuzzing concorrente sistemático executado com o comando `chaossql matrix`.

PREVENIDO: Isolamento Seguro
PERMITIDO: Risco de Anomalia
Anomalia / CódigoGrafo FormalSQLite (WAL)Postgres (RC)Postgres (SSI)MySQL (InnoDB RR)
P4 — Lost Update (Perda de Atualização)T1 ──(rw)──► T2 ──(ww)──► T1PERMITIDOPERMITIDOPREVENIDOPREVENIDO
A5B — Write Skew (Distorção de Escrita)T1 ──(rw)──► T2 ──(rw)──► T1PERMITIDOPERMITIDOPREVENIDOPERMITIDO
A5A — Read Skew (Distorção de Leitura)T1 ──(rw)──► T2 ──(wr)──► T1PERMITIDOPERMITIDOPREVENIDOPREVENIDO
G0 — Dirty Write (Escrita Suja)T1 ──(ww)──► T2 ──(ww)──► T1PREVENIDOPREVENIDOPREVENIDOPREVENIDO
G1a — Dirty Read / Aborted Read (Leitura Suja)w1(x) ... r2(x) ... a1PREVENIDOPREVENIDOPREVENIDOPREVENIDO
G2 — Anti-Dependency Cycle (Ciclo de Anti-Dependência)T1 ──(rw)──► T2 ──(rw)──► T3 ──(rw)──► T1PERMITIDOPERMITIDOPREVENIDOPERMITIDO
G-DL — Deadlock Cycle & Recovery (Bloqueio Mútuo)T1 ──(waits)──► T2 ──(waits)──► T1Timeout40P0140P011213
P4

Lost Update (Perda de Atualização)

Duas transações leem o mesmo registro e calculam novas versões com base em leituras defasadas. A segunda escrita comita e sobrescreve cegamente a primeira.

Comando para reproduzir:chaossql demo banking