AXForum  
Вернуться   AXForum > Прочие обсуждения > Детская
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.10.2019, 12:03   #27  
NitroJunkie is offline
NitroJunkie
Участник
 
19 / 28 (1) +++
Регистрация: 03.10.2019
Цитата:
Сообщение от trud Посмотреть сообщение
REPEATABLE READ вполне так даст вам блокировки в SQL Server
https://docs.microsoft.com/en-us/sql...ql-server-2017

Еще раз - мы хотим получить систему без блокировок в общем случае. На чтении это дает только READ_COMMITTED_SNAPSHOT(ON). Но он будет давать блокировки при записи(что как-бы тоже плохо). Поэтому запись сделали в 2 этапа, что потребовало добавление в каждую таблицу столбца RecVersion. (Ну и плюс RecId - уникальный идентификатор записи)
Я знаю что REPEATABLE_READ дает блокировки (так как MS SQL по умолчанию блокировочник). Но в MS SQL уже давно сделали версионный режим и соответствующий уровень изоляции - SNAPSHOT, который соответствует REPEATABLE_READ в PostgreSQL, и SERIALIZABLE в Oracle. То есть можно включить уровень изоляции SNAPSHOT и MS SQL сам будет проверять версии записей и кидать update conflict'ы. И это будет по идее ровно то что делает Axapta на прикладном уровне (и по идее быстрее).

Блокировок при этом не будет (в этом собственно и смысл версионного режима).
Теги
1c

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Почти про 1С, а вообще про ПК, Пользователей и ИТ-шников. Lemming Курилка 0 26.02.2005 14:57

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:39.