De "phantom read" in MySQL op RR-isolatieniveau is diep verborgen, maar kan deze nog steeds reproduceren. Dit zijn de stappen:
-
maak tabel ab (a int primaire sleutel, b int);
-
Tx1:
begin;
selecteer * van ab; // lege set - Tx2:
begin;
invoegen in ab-waarden (1,1);
commit; - Tx1:
selecteer * van ab; // lege set, verwachte phantom read ontbreekt.
update ab set b =2 waarbij a =1; // 1 rij aangetast.
selecteer * van ab; // 1 rij. fantoom lees hier!!!!
toezeggen;