|
Неявные блокировки платформы | ☑ | ||
---|---|---|---|---|
0
Enterprise
15.01.16
✎
12:46
|
Здравствуйте. Теоретический вопрос
В конфигурации стоит управляемый режим блокировок. При записи данных платформа неявно устанавливает исключительную блокировку. С этим ясно. Вопрос: неявные блокировки платформы действую как и явные до конца транзакции? Есть ли неявные разделяемые блокировки при чтении данных и как действуют? |
|||
1
Господин ПЖ
15.01.16
✎
12:50
|
>Есть ли неявные разделяемые блокировки при чтении данных и как действуют?
это зависит и от платформы от настроек базы... что там у вас - телепаты в отпуске |
|||
2
Господин ПЖ
15.01.16
✎
12:50
|
>от настроек базы
+ и от версии скуля |
|||
3
Enterprise
15.01.16
✎
12:54
|
(1) У нас пустая конфигурация и вопрос про платформенный менеджер блокировок
|
|||
4
Enterprise
15.01.16
✎
13:04
|
(3)+ Платформа 8.3.7
|
|||
5
Enterprise
15.01.16
✎
13:25
|
и тишина... ))
|
|||
6
vde69
15.01.16
✎
13:37
|
блокировки на чтение или на запись?
вроде так: на чтение действуют пока не разрушен менеджер блокировки, на запись - до окончания транзакции |
|||
7
Enterprise
15.01.16
✎
13:51
|
(6) больше интересует чтение
а когда он разрушается? |
|||
8
Enterprise
15.01.16
✎
13:53
|
(7) Больше интересует ставит ли сама платформа блокировку на чтение неявную
|
|||
9
vde69
15.01.16
✎
13:57
|
(8) платформа сама НЕ ставит блокировки на чтение (при штатном уровне изоляции транзакции). То есть грязное чтение в 1с присутствует...
|
|||
10
vde69
15.01.16
✎
14:00
|
что кстати легко проверяется :)
1. делаешь отчет который выводит одной суммой остаток на складе 2. запускаешь в цикле перепроведение нескольких документов 3. в параллельном сеансе обновляешь отчет и удивляешься, что сумма склада прыгает :) |
|||
11
Ник второй
15.01.16
✎
14:13
|
(0) Смотря на какой стороне
|
|||
12
Карупян
15.01.16
✎
14:14
|
в режиме рид коммитед снэпшот блокировок скуля на чтение вообще нет
|
|||
13
Enterprise
15.01.16
✎
14:16
|
(11) Поясните
|
|||
14
Enterprise
15.01.16
✎
14:26
|
(10) Есть отличия при работе в файловом режиме и клиент серверном в блокировках 1С, кроме уровня изоляции?
|
|||
15
Ник второй
15.01.16
✎
14:27
|
(13) Есть блокировки скуля и блокировки сервера 1С...
первые действуют только при выполнении скрипта к бд, вторые на всю транзакцию. Упрощенно так |
|||
16
Enterprise
15.01.16
✎
14:32
|
(15) Я в (3) написал, что именно интересует менеджер блокировок 1С
|
|||
17
Ник второй
15.01.16
✎
14:34
|
(16) Что подразумевается под неявными, блокировка при изменении или чтении в транзакции?
Действуют до конца транзакции |
|||
18
Enterprise
15.01.16
✎
14:35
|
(17) Неявные, которые сама платформа делает.
При чтении в транзакции |
|||
19
Ник второй
15.01.16
✎
14:37
|
(18) До конца транзакции
|
|||
20
Enterprise
15.01.16
✎
14:39
|
(19) т.е. всё таки есть блокировка при чтении?)
|
|||
21
bred_
sivko_burko 15.01.16
✎
14:47
|
в режиме рид коммитед снэпшот
Нет такого режима, есть рид коммитед, есть снэпшот, это два разных режима (точнее уровня изоляции) https://msdn.microsoft.com/ru-ru/library/ms173763(v=sql.120).aspx. Уже не первый раз слышу этот термин... |
|||
22
Ник второй
15.01.16
✎
14:51
|
(20) А есть сомнения?
|
|||
23
Enterprise
15.01.16
✎
14:53
|
(12), (21) блокировки на стороне СУБД здесь не рассматриваются
|
|||
24
Enterprise
15.01.16
✎
14:54
|
(22) Есть)
|
|||
25
Enterprise
15.01.16
✎
14:54
|
(22) Есть незнание
|
|||
26
Карупян
15.01.16
✎
14:55
|
(21) is read committed snapshot on = true
|
|||
27
Ник второй
15.01.16
✎
14:56
|
(25) Я развеял твои сомнения?
|
|||
28
Enterprise
15.01.16
✎
15:00
|
(27) ставится разделяемая блокировка?
|
|||
29
bred_
sivko_burko 15.01.16
✎
15:07
|
is read committed snapshot on = true
аааа... в этом смысле да, конечно |
|||
30
Карупян
15.01.16
✎
15:30
|
платформа сама НЕ ставит упр блокировок на чтение
|
|||
31
Ник второй
15.01.16
✎
15:46
|
(30)
Неявные блокировки платформы ... При чтении наборов записей платформа сама (неявно) устанавливает разделяемую управляемую блокировку. Эта неявная блокировка сохраняется до конца транзакции (как все управляемые блокировки). http://cascade-group.com.ua/upravlyaemye-blokirovki-1c/ |
|||
32
Enterprise
15.01.16
✎
15:47
|
(31) Я это тоже читал)
|
|||
33
Ник второй
15.01.16
✎
16:01
|
(32) Если сомневаешься, то проверь )
|
|||
34
Enterprise
15.01.16
✎
16:02
|
(33) Обязательно на выходных проверю и отпишусь)
|
|||
35
Enterprise
19.01.16
✎
07:41
|
(33) неявная блокировка при чтении в транзакции пока не подтвердилась)
|
|||
36
2mugik
19.01.16
✎
08:22
|
(35) Если упр. режим блокировок то СКЛ стоит в рид комиттед и блокировка ставится только на время чтения.
|
|||
37
Enterprise
19.01.16
✎
09:09
|
(36) согласен. но меня статья из (31) смутила
|
|||
38
Marine Band
19.01.16
✎
09:10
|
(35) Как ты проверял, через ЦУП? или смотрел сам тех журнал?
|
|||
39
vde69
19.01.16
✎
09:15
|
(35)блокировка не означает, что данные нельзя прочитать и (о ужас) записать...
блокировки они разные бывают... |
|||
40
Enterprise
19.01.16
✎
09:33
|
(38) ну пока проверял при работе в двух сеансах через отладку)
|
|||
41
Enterprise
19.01.16
✎
09:34
|
(39) точнее не скажешь
|
|||
42
Enterprise
19.01.16
✎
09:35
|
(41) * точнее и не скажешь
|
|||
43
Marine Band
19.01.16
✎
09:37
|
(40) А как проверял? в скульной базе в одном сеансе в транзакции прочитал регистр накопления и после запрос.Выполнить поставил точку остановки.
А во втором сеансе попытался записать этот регистр накопления с совпадением измерений? |
|||
44
Enterprise
19.01.16
✎
10:01
|
(43) ну типо того, да
|
|||
45
Enterprise
20.01.16
✎
07:21
|
(43) продолжения не будет?)
|
|||
46
hhhh
20.01.16
✎
09:50
|
(44) вроде "после запрос.Выполнить" блокировка уже снимается. Запрос-то уже выполнен.
|
|||
47
Enterprise
21.01.16
✎
08:48
|
(46) а как же (31)? в рид коммитед на sql она снимется после выполнения запроса, да. А на сервере 1с?
|
|||
48
hhhh
21.01.16
✎
10:19
|
(47) то есть вы запрос в транзакции делаете?
|
|||
49
Enterprise
21.01.16
✎
10:26
|
(48) в обработке проведения
|
|||
50
Enterprise
26.01.16
✎
10:34
|
Судя по http://kb.1c.ru/articleView.jsp?id=46#case1_3:
1. Разделяемая блокировка на чтение устанавливается ТОЛЬКО НА УРОВНЕ СУБД 2. Устанавливается она в транзакции при чтении в объектной технике и выполнении запросов. 3. Важный момент: Только если данные реально изменились, при записи будет автоматически установлена эксклюзивная блокировка. Освещался в последнем посте Управляемые блокировки - боль. страдание. унижение. Пока я понял так. Может, конечно, я неправильно понял) Думаю, В УЦ1 расставят все точки) |
|||
51
Дык ё
26.01.16
✎
10:50
|
(21) по твоей же ссылке оно есть ;) долистай до таблицы в разделе remarks
|
|||
52
Enterprise
17.02.16
✎
15:44
|
Ну и финалочка)
После УЦ1 стало намного яснее. Статья http://cascade-group.com.ua/upravlyaemye-blokirovki-1c/ права. 1. Неявные управляемые блокировки платформы действуют до конца транзакции. 2. Особенность в том, что эти блокировки устанавливаются только при чтении/записи в объектной технике. При выполнении запроса, управляемые блокировки не устанавливаются. |
|||
53
2mugik
02.03.16
✎
12:51
|
(52) т.е. если в транзакции прочитал объект - то до конца транзакции на него накладывается неисключительная блокировка?
|
|||
54
Enterprise
19.03.16
✎
09:27
|
(53) да
|
|||
55
Cyberhawk
19.03.16
✎
10:41
|
+(53) А если в транзакции выполнил запрос (к полям объекта)?
|
|||
56
Enterprise
19.03.16
✎
14:31
|
(52)(55) Я набор записей регистра имел в виду.
Например ПолучитьОбъект(), Выбрать() не вызовут управляемую блокировку 1С, так же как и обычный запрос |
|||
57
Enterprise
19.03.16
✎
15:53
|
(53)(55)*
|
|||
58
Вуглускр1991
19.03.16
✎
19:42
|
(52) Вот теперь правильно.
Запусти ТЖ и убедись отлавливая события "TLOCK". |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |