Имя: Пароль:
1C
1С v8
Ошибка: Конфликт блокировок при выполнении транзакции
, ,
0 seademon86
 
22.02.13
11:30
Всем доброго времени суток,
Столкнулись с такой проблемой. Есть распределенная ИБ: главная база  работает на SQL, распределенная - в файловом варианте - все ок, все счастливы.

Переводим распределенную на SQL и в ней начинаются постоянные блокировки - пользователи постоянно создают блокировки др для друга на обычных документах (акты, накладные по 1-5 строк). При этом в головной (где та же конфа) - все хорошо.

Может кто знает, в какую сторону копать, где искать проблему?
1 ВалераОшкин
 
22.02.13
11:32
(0) может слишком часто обмен проходит?
2 ВалераОшкин
 
22.02.13
11:34
обмен работает через планы обмена?
3 ВалераОшкин
 
22.02.13
11:34
или каждый раз закачивается очень большой файл обмена?
4 seademon86
 
22.02.13
11:34
(1) Да нет, настроено вроде 1 раз в день (на ночь) без повторений...
5 чувак
 
22.02.13
11:35
Тоноксти блокировок.
Скорре всего уровни изоляции разные:


Автоматические блокировки

Файловая БД
Таблиц
Serializable

MS SQL Server
Записей
Repetable Read или Serializable
6 ВалераОшкин
 
22.02.13
11:37
(5) речь идет про то, что обе базы в SQL
7 seademon86
 
22.02.13
11:38
(5) Не совсем понял *смущен*. Это где-то в настройках SQL можно посмотреть?

Смущает просто, что головная всегда работала на SQL и все было отлично, а распределенную перевели, и у нее какие-то проблемы (
8 ВалераОшкин
 
22.02.13
11:39
(7) Посмотри в планах обмена размеры таблиц регистрации записей
9 ВалераОшкин
 
22.02.13
11:40
+(8) Возможно у тебя что-то не то и они не чистятся при обмене
10 ВалераОшкин
 
22.02.13
11:40
+(8) Посмотри в планах обмена размеры таблиц регистрации изменений
11 ВалераОшкин
 
22.02.13
11:40
отпишись, интересно
12 tdm
 
22.02.13
11:43
(7) поздравляю с переходом на новый уровень) скоро будете в этом разбираться, стыдно не не знать а не учиться)...
13 ВалераОшкин
 
22.02.13
11:46
Смотри, блокировки могут возникать из-за того, что у тебя при обмене не чистятся таблицы регистрации изменений планов обмена.

Каждая запись документа - это регистрация изменения. Если таблицы большие - то вполне возможно.
14 seademon86
 
22.02.13
11:48
(8) - (10) полазил в планах обмена - размер таблиц не нашел где посмотреть. Это в режиме предприятия где-то посмотреть можно?
15 ВалераОшкин
 
22.02.13
12:12
(14) воспользуйся обработкой "Регистрация изменений для обмена"

После обмена посмотри, остались ли записи изменений по тем документам, у которых возникает взаимоблокировка
16 seademon86
 
22.02.13
12:13
(15) Ок, спс, посмотреть смогу только в пн (нет доступа к удаленной базе) - отпишусь тогда )
17 seademon86
 
22.02.13
15:57
(15) Посмотрел таблицу регистрации изменений - на стороне "дочерней" базы все ок (ни по одному из объектов нет незарегистрированных изменений).

Кто-нибудь знает, в чем еще может быть проблема?
18 Fragster
 
гуру
22.02.13
15:58
скорее всего конфа криво допилена, а в центре не возникает конфликтов от того, что документы продочтася другие как правило.
19 Fragster
 
гуру
22.02.13
15:59
конфликт блокировок - либо слишком долгие блокировки, либо разный порядок захвата ресурсов
20 seademon86
 
22.02.13
16:57
(18) продочтася = проводятся?
Документы - одни и те же, по другой организации только.
Ожидание блокировок в базе настроено одинаковое (20 сек) и в головной и в распределенной.

По порядку захвата ресурсов можно подробнее? Где посмотреть?
21 ВалераОшкин
 
22.02.13
17:02
(17) > ни по одному из объектов нет незарегистрированных изменений

А что значит незарегистрированное изменение?
22 seademon86
 
22.02.13
17:12
(21) Если правильно понял, то открыл таблицу регистрации изменений - и там все пусто
До выгрузки (http://s018.radikal.ru/i526/1302/c9/380bf7d6d51e.png)
После выгрузки (http://s017.radikal.ru/i400/1302/ba/e3231ccf04fc.jpg)

Если что-то не то, то где посмотреть то?! =))
23 seademon86
 
22.02.13
17:18
к (22): что бы посмотреть картинку, последнюю скобку нужно удалить ((
24 Demiurg
 
22.02.13
18:10
(0) видеть контекст взаимных блокировок (причины) можно с помощью бесплатных сервисов http://www.gilev.ru/deadlock/

скорее всего надо начать с:
1) конфа должна быть на управляемых блокировках
2) включить версионирование на субд http://www.gilev.ru/snapshot1c/
3) если не все деадлоки уйдут, то продиагностировать выше указанным сервисом

интерпретацию показаний сервиса можно бесплатно получить в специализированном форуме http://www.gilev.ru/forum/viewforum.php?f=7
25 seademon86
 
23.02.13
19:30
(24) Спасибо, с пн начну с первого пункта ...
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.