Почему мы должны избегать неповторяющихся и фантомных чтений? - PullRequest
0 голосов
/ 06 июня 2018

Я могу понять, что нам следует избегать грязного чтения, потому что если мы читаем незафиксированные данные, другие транзакции могут откатываться, но в неповторяемых и фантомных чтениях мы читаем зафиксированные данные.Если мы читаем зафиксированные данные, в чем проблема.

1 Ответ

0 голосов
/ 06 июня 2018

Если кто-то скажет вам, что его зовут Стив, а затем, через 6 месяцев, вы снова встретитесь с ним и скажете, что его зовут Боб, это проблема?Тот факт, что в те времена они законно изменили свое имя, а это означает, что факты изменились , может иметь или не иметь значения для вас .Но тот факт, что это может произойти - это как минимум то, о чем нужно знать.

Лично я не склонен писать код, основанный на повторных запросах одних и тех же данных внутриодна транзакция и, следовательно, нет никаких определенных ситуаций, когда неповторяющиеся чтения вызывают у меня проблемы.Но я знаю, что они возможны.Тот факт, что данные были зафиксированы (как и в приведенной выше аналогии с изменением имени, когда в обоих случаях имя было полностью подтверждено для имени объекта, с которым мы разговаривали), не означает, что оно не может измениться.

...