Имя: Пароль:
1C
1С v8
Превышено время ожидания запроса на блокировку
0 alexmobile
 
13.03.17
15:02
При параллельном проведении документа получаю ошибку:

по причине:
Ошибка выполнения запроса
по причине:
Конфликт блокировок при выполнении транзакции:
Microsoft SQL Server Native Client 11.0: Превышено время ожидания запроса на блокировку.
HRESULT=80040E31, SQLSrvr: SQLSTATE=HYT00, state=33, Severity=10, native=1222, line=1

В запросе выбираются документы проводимого типа.
При проведении документа блокируется вся таблица документа?
1 polosov
 
13.03.17
15:55
2 Вафель
 
13.03.17
15:58
файл?
3 Вафель
 
13.03.17
15:58
ой, че это я
4 H A D G E H O G s
 
13.03.17
16:00
(0) Ну, если ты плохо выберешь - то вся таблица документа все дерево индекса.
5 HardBall
 
13.03.17
17:58
(0) Какой режим блокировок установлен. База файловая?
6 HardBall
 
13.03.17
17:58
Походу не файловая.
7 HardBall
 
13.03.17
18:11
8 alexmobile
 
13.03.17
19:20
Блокировка на чтение-то зачем ставится
9 H A D G E H O G s
 
13.03.17
19:59
(8) Так работает SQL в режиме Read Committed. S блокировка до конца транзакции при Чтении. Хотите только на момент чтения - юзайте 8.3 и Snapshot
10 alexmobile
 
14.03.17
06:09
(9) Как воспроизводится. В процедуре ОбработкаПроведения есть сокращенно такой запрос "Выбрать Документы.Ссылка из Документы.РегистрацияПотребленияУслугПоОбъектамПотреблениеУслугПоОбъектам Как документы". Провожу документ1, в процедуре ОбработкаПроведения ставлю точку останова. В соседней сессии провожу другой документ, и ошибка выходит на выполнении этого запроса. Что интересно, открываю 3 сессию и там выполняю этото запрос в консоли, он выполняется.
11 Одинесю
 
14.03.17
06:52
(10) Потому что у первых двух закончилась транзакция.
12 H A D G E H O G s
 
14.03.17
10:06
(10) все логишно . Запрос в консоли - read uncommited, без блокировки.
13 H A D G E H O G s
 
14.03.17
10:08
Для эстетствцющих - там будет хинт nolock