A "leitura fantasma" no MySQL no nível de isolamento RR está oculta profundamente, mas ainda pode reproduzi-la. Aqui estão os passos:
-
criar tabela ab(a int chave primária, b int);
-
Tx1:
começar;
selecione * de ab; //conjunto vazio
- Tx2:
começar;
inserir em valores ab(1,1);
commit; - Tx1:
selecione * de ab; // conjunto vazio, leitura fantasma esperada ausente.
atualize ab set b =2 onde a =1; // 1 linha afetada.
selecione * de ab; // 1 linha. leia fantasma aqui!!!!
comprometer;