Имя: Пароль:
1C
 
Про управляемые блокировки
,
0 БукинГена
 
23.09.15
08:50
Есть документ Реализация. Он блокирует регистр Товары управляемой блокировкой. Склад: Склад1. Товары: товар1, товар2, товар3.

Есть документ Списание. Он блокирует регистр Товары управляемой блокировкой. Склад: Склад2. Товары: товар3, товар4, товар5.

Вопрос. Документ списание будет ждать когда документ реализация снимать блокировку? Или без проблем будет параллельно блокировать эти записи регистра?
1 БукинГена
 
23.09.15
08:51
Здесь есть у обоих документов товар3.
2 ДенисЧ
 
23.09.15
08:52
Если у тебя измерения пересекаются, то откуда возьмётся параллеизм?
3 БукинГена
 
23.09.15
08:55
(2) С регистре два измерения. Склад и Товар.
Есть в регистре остатки по товар3 есть две записи у каждого склада отдельно, тогда вроде они не должны пересекаться.
4 H A D G E H O G s
 
23.09.15
09:02
(0) без проблем
5 ViSo76
 
23.09.15
09:04
В MS SQL блокируется страницами а не записями если 2 записи будет расположены на одной странице таблицы то будет блокировка если нет то не будет.
6 БукинГена
 
23.09.15
09:06
(5) вот ...опа
7 H A D G E H O G s
 
23.09.15
09:13
(5) мы сейчас про управляемые блокировки
8 H A D G E H O G s
 
23.09.15
09:23
Вот, почитайте про гранулярность блокировок
http://www.askit.ru/custom/sql2005_admin/m11/11_05_07_locks.htm
Вы из какого то дремучего ms SQL server 7.0 похоже вылезли.
9 ViSo76
 
23.09.15
09:25
(7) Ну да это для MS SQL, а в 1С управление блокировками происходит на уровне сервера предприятия по этому блокировка может быть кратковременная в случае попадания записей в 1 страницу ( в случае обновления одной из записей, правда всё зависит от уровня изоляции )
10 H A D G E H O G s
 
23.09.15
09:28
(9) шта?
11 ViSo76
 
23.09.15
09:35
(10) Я это всё писал про страничные блокировки, если есть блокировки на уровне записи то эта информация не актуальна тогда. И не штакай, а то ты похож на быдло в данном случае.
12 H A D G E H O G s
 
23.09.15
11:45
(0) Немного резюме:
а)Если у тебя не пересекаются измерения - никаких ожиданий на блокировках не будет.
б)Если у тебя пересекаются измерения и включено разделение итогов - никаких ожиданий на блокировках не будет.
в)Управляемые блокировки ставятся платформой автоматом, ничего не надо ставить самому.
г)Все вышеперечисленное верно для управляемых блокировок, которые ставятся сервером 1С. Говорим о управляемых блокировках - говорим о блокировках сервера 1С.
д)Есть еще и блокировки СУБД, но и тут с ними могут быть проблемы только тогда, когда статистика неактуальна.
е)Все вышеперечисленное актуально, если мы говорим только о том случае, когда в процедуре ОбработкаПроведения есть только код добавления записей в коллекцию движений. Когда начинают появляться доп. алгоритмы - например, контроль остатков - все становиться несколько сложнее и о вышеперечисленном можно забыть.
13 Гёдза
 
23.09.15
12:01
Если режим совместимости ниже 8.3 то вполне могут быть блокировки, но не управляемые а субд
14 БукинГена
 
23.09.15
13:09
(12) "в)Управляемые блокировки ставятся платформой автоматом, ничего не надо ставить самому. "

Т.е. если конфа, документ и регистр в режиме УБ, тогда ничего в коде обработки проведения прописать не надо?
Т.е. платформа сама по составу измерения регистра определить по каким разрезам ставить блокировки?
15 H A D G E H O G s
 
23.09.15
13:13
(14) Да. Если учитываем пункт (е).
16 H A D G E H O G s
 
23.09.15
13:14
(13) Нет, не могут. Если учитываем пункты (д) и (е) и эскалацию.
17 Гёдза
 
23.09.15
13:15
(16) Эх ни разу ты зуп не оптимизировал
18 H A D G E H O G s
 
23.09.15
13:16
(17) Светлые Боги Гейтса миловали. Я тут про остаточный регистр накопления речь веду.