Имя: Пароль:
1C
 
1с Конфликт блокировок
0 BaHgaJI
 
05.10.22
11:34
Коллеги, добрый день!
База 8.2 обычное приложение, режим совместимости Версия 8.3.13, режим блокировок автоматический, READ_COMMITTED_SNAPSHOT ON

Така ситуация, выполняю запрос большой и сложный, при его выполнении нет возможности записать элементы
некоторых справочников (конфликт блокировок, таймаут), запрос выполняется не в транзакции, просто в обработке.
1 BaHgaJI
 
05.10.22
11:38
Временных таблиц в запросе нет, только вложенные запросы.
2 BaHgaJI
 
05.10.22
11:42
Правильно я понимаю, что Запрос.Выполнить() ставит S блокировку и поэтому я не могу изменить элементы справочников?
3 BaHgaJI
 
05.10.22
11:45
ALLOW_SNAPSHOT_ISOLATION тоже ON
4 mistеr
 
05.10.22
12:49
>База 8.2
>режим совместимости Версия 8.3.13

Где-то опечатка
5 timurhv
 
05.10.22
16:47
(0) https://infostart.ru/1c/articles/629017/
Раздел "Запрос со сканом"

Перейти на PostgreSQL
Поднимать режим совместимости у конфигурации
Выполнить запрос на стороне MSSQL, но свойство меняется при перезапуске службы сервера 1С или перезагрузке сервера 1С
6 mistеr
 
05.10.22
19:11
(5) Спасибо, полезная статья
7 Sapiens_bru
 
06.10.22
04:55
RCSI работает только для управляемых блокировок.
Флаг влияет только на уровень изоляции READ COMMITED , а в автоматическом режиме запись в базу идет как минимум на REPEATABLE READ
Та же беда у постгресс, он в автоматическом режиме блокировок работает с изоляцией TABLE LOCK.
8 BaHgaJI
 
06.10.22
20:24
(5),(7) спасибо