"Phantom read" i MySQL på RR-isoleringsnivå är dold djupt, men kan fortfarande reproducera den. Här är stegen:
-
skapa tabell ab(a int primärnyckel, b int);
-
Tx1:
börja;
välj * från ab; // tom uppsättning - Tx2:
börja;
insert into ab values(1,1);
commit; - Tx1:
välj * från ab; // tom uppsättning, förväntad fantomläsning saknas.
uppdatera ab set b =2 där a =1; // 1 rad påverkad.
välj * från ab; // 1 rad. fantom läs här!!!!
begå;