Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

shared-бликировки и read commited [MSSQL]


Страницы:   1 2

Bless ©   (2006-02-10 12:08:00) 

Вопрос носит чисто теоретический характер, но все-равно охота разобраться.
Короче, укажите, где я недопонимаю.

Читаем BOL на команду
SET TRANSACTION ISOLATION LEVEL READ COMMITTED

Specifies that shared locks are held while the data is being read to avoid dirty reads


Как я понял из процитированного, установка уровня изоляции транзакции READ COMMITED решает проблему "грязного чтения". Причем, решается эта проблема путем наложения shared-блокировок.

Я несогласен:
"грязное чтение" - это когда (в хронологическом порядке)
1. одна транзакция меняет данные,
2. вторая - читает измененные данные
3. первая транзакция откатывает данные.

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

Но если первая транзакция наложит на данные shared-блокировку, то каким образом это решит проблему, ведь shared-блокировка разрешает чтение данных другим транзакциям?
Имхо, для решения проблемы "грязного чтения" должна быть наложена монопольная блокировка.
В BOL ошибка или я где-то торможу?


evvcom   (2006-02-10 14:35:00) [21]


> Имхо, для решения проблемы "грязного чтения" должна быть
> наложена монопольная блокировка.

В Oracle эта проблема решена без блокирования.


Bless   (2006-02-10 13:16:00) [22]

А как переводится корректно?


Johnmen   (2006-02-10 12:27:00) [23]

1. В рамках одной транзакции меняются данные,
2. В рамках второй - читаются измененные данные, не подтвержденные первой
3. первая транзакция откатывает данные.

>В BOL ошибка или я где-то торможу?

Просто не очень корректно перевёл.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо