|
Конфликт блокировок при выполнении транзакции. | ☑ | ||
---|---|---|---|---|
0
Serpom
12.10.21
✎
06:46
|
Делаю фоновое проведение документа. Когда начинаю его проводить выходит ошибка:
Проведение документа Расчет себестоимости выпуска. ДлительныеОперации.ВыполнитьСКонтекстомКлиента Задание завершено с ошибками {ОбщийМодуль.ПроцедурыРасчетаСебестоимостиРасширеннаяАналитика.Модуль(921)}: Ошибка при вызове метода контекста (Записать) СтруктураНаборыЗаписей.УчетЗатрат.Записать(Ложь); по причине: Конфликт блокировок при выполнении транзакции: Microsoft SQL Server Native Client 11.0: Lock request time out period exceeded. HRESULT=80040E31, SQLSrvr: SQLSTATE=HYT00, state=38, Severity=10, native=1222, line=1 Подскажите куда смотреть? Как убрать блокировку? |
|||
1
Конструктор1С
12.10.21
✎
06:50
|
Запускай в профилировщике скуля трассировку с событием deadlock, он тебе покажет, запись каких данных сталкивается лбами
|
|||
2
Serpom
12.10.21
✎
06:58
|
(1) А если до скуля доступа нет, то по другому никак?
|
|||
3
ДенисЧ
12.10.21
✎
07:07
|
(2) Можно техжурнал настроить, а потом его просмотреть.
ТутЪ есть видео, в картинках показывают https://www.youtube.com/results?search_query=1с+анализ+блокировок Но если нет доступа и к ТЖ, то остаётся только ставить свечи и поливать сервер святой водой (литр на гигагерц) |
|||
4
osa1C
12.10.21
✎
07:17
|
(3) думаешь литра будет достаточно?
|
|||
5
ДенисЧ
12.10.21
✎
07:20
|
(4) Святой воды - да. А того, о чём ты подумал - нет.
|
|||
6
osa1C
12.10.21
✎
07:22
|
(5) я о святой воде и думал)))) Каждый думает в меру своей распущенности )))
|
|||
7
ИС-2
naïve
12.10.21
✎
07:26
|
(0) батенька, да Вы извращенец. Это расчет себестоимости. Он накладывает блокирвку на основные регистры и ни кто работать не может.
Или у Вас ошибка вылетает когда только 1 человек в базе ? |
|||
8
Serpom
12.10.21
✎
07:32
|
(7) Да, ошибка вылазит когда 1 человек в базе.
|
|||
9
Serpom
12.10.21
✎
08:55
|
(0) И еще один момент. Если в коде отключить форму прогресса выполнения (ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, , ПараметрыОжидания);) то тогда документ проводится в фоне без проблем.
|
|||
10
1c-kind
12.10.21
✎
09:14
|
(8) Проверяйте работающие фоновые задания.
|
|||
11
pechkin
12.10.21
✎
09:37
|
(1) deadlock? с какого х..?
|
|||
12
pechkin
12.10.21
✎
09:38
|
наверняка несколько фоновых запускается
|
|||
13
Конструктор1С
12.10.21
✎
10:05
|
(11) с телефона читал топик. Событие профилировщика будет timeout
|
|||
14
pechkin
12.10.21
✎
10:09
|
поищи в ошибках ерп. наверняка уже зарегистрирована
|
|||
15
H A D G E H O G s
12.10.21
✎
10:13
|
(1) Я тебе без профайлера скажу, что это регистр УчетЗатрат.
|
|||
16
fisher
12.10.21
✎
10:15
|
Фига себе. А какой же там таймаут?
|
|||
17
Serpom
12.10.21
✎
10:18
|
(12) Фоновое одно. Это уже проверил
|
|||
18
Конструктор1С
12.10.21
✎
10:24
|
(15) спасибо, кэп, только нужно выяснить кого он там ожидал
|
|||
19
Serpom
12.10.21
✎
10:26
|
Сейчас, кстати, начала падать в другом месте:
{ОбщийМодуль.КорректировкаСтоимостиУчетЗатрат.Модуль(108)}: Ошибка при получении значения атрибута контекста (ОтражатьВУправленческомУчете) Если РегламентныйДокумент.ОтражатьВУправленческомУчете Тогда по причине: Конфликт блокировок при выполнении транзакции: Microsoft SQL Server Native Client 11.0: Lock request time out period exceeded. HRESULT=80040E31, SQLSrvr: SQLSTATE=HYT00, state=33, Severity=10, native=1222, line=1 |
|||
20
ДенисЧ
12.10.21
✎
10:27
|
Я дал ссылки на видео, где разбирается, как искать взаимоблокировки. Там одно, на полчаса. За это время уже можно было бы посмотреть.
|
|||
21
pechkin
12.10.21
✎
10:28
|
(20) это НЕ взаимоблокирвоки
|
|||
22
ДенисЧ
12.10.21
✎
10:29
|
(21) ТЫ УВЕрен?
|
|||
23
pechkin
12.10.21
✎
10:30
|
(22) ты путешь lock timeout и deadlock
|
|||
24
pechkin
12.10.21
✎
10:31
|
||||
25
ДенисЧ
12.10.21
✎
10:33
|
(23) Я не путаю. Но начать с видео, чтобы иметь хотя бы представление - имеет смысл.
|
|||
26
ДенисЧ
12.10.21
✎
10:34
|
Тем более падает основной процесс на превышении. А почему превышение? Потому что кто-то другой держит и не отдаёт.
|
|||
27
H A D G E H O G s
12.10.21
✎
10:34
|
(18) другую транзакцию с этим же самым регистром. Откуда вы беретесь?
Профайлер ничем не поможет, нужно собирать ТЖ с контекстом выполнения, чтобы был стек вызовов, тогда только можно будет понять. |
|||
28
ДенисЧ
12.10.21
✎
10:36
|
(27) "нужно собирать ТЖ "
Слышал про поговорку про кол и тесать? Так тут именно такая ситуация. |
|||
29
Конструктор1С
12.10.21
✎
10:38
|
(27) вообще-то я это и имел ввиду
|
|||
30
H A D G E H O G s
12.10.21
✎
10:40
|
Даже не знаю, как в современной конфиге, ситуация докатилась до СУБД таймаута, может плохой план запроса при чтении и скан всей таблицы.
|
|||
31
fisher
12.10.21
✎
10:41
|
На длинных блокировках частенько можно и без всяких ТЖ, профайлеров и стеков вызовов догадаться о сути проблемы тупо в мониторинге сиквельных процессов. Глянув какой процесс какой ожидает и что в обоих происходит. Но не всегда, конечно.
|
|||
32
Конструктор1С
12.10.21
✎
11:13
|
(24) парсит 1сом ТЖ такая себе идея. На этом прогорел 1сный ЦУП. Там, где bash-утилиты отрабатывают за минуты, доблестный ЦУП может пыхтеть часами, а то и днями
|
|||
33
H A D G E H O G s
12.10.21
✎
11:44
|
(32) Писать ерунду, не вникая в подробности - не меньшее зло. Вы крайне близки к попаданию в список.
|
|||
34
pechkin
12.10.21
✎
11:47
|
(30) эскалация же
|
|||
35
H A D G E H O G s
12.10.21
✎
11:48
|
(34) Да, это очень может быть.
Вот тут автору поможет профайлер с фильтром на эскалацию, а потом, если подтвердиться, ключ -t1211 |
|||
36
2mugik
12.10.21
✎
12:30
|
(0)А не фоновое проведение нормально отрабатывает?
|
|||
37
Конструктор1С
12.10.21
✎
12:34
|
(33) сам же ерунду и пишешь
|
|||
38
H A D G E H O G s
12.10.21
✎
12:58
|
##молча добавляет Конструктора в список к Г1С и Ливингстарам.
|
|||
39
Конструктор1С
12.10.21
✎
13:00
|
Сначала в себе разберись. То ему в скульной блокировке профилировщик не помощник, потом вдруг помощник
|
|||
40
pechkin
12.10.21
✎
13:02
|
(39) искать другую сторону не помощник. искать эскалацию - помощник
|
|||
41
Конструктор1С
12.10.21
✎
13:11
|
(40) проливать информацию, почему возникла блокировка - помощник
|
|||
42
pechkin
12.10.21
✎
13:12
|
(41) этой инфы будет явно не достаточно и поэтому и смысла этого делать нет
|
|||
43
Конструктор1С
12.10.21
✎
13:16
|
(42) а я что, где-то писал "только профилировщик и ничего более"? Так-то логично первым делом узнать подробности у скуля, что же ему не понравилось. И только потом нырять в ТЖ. Я тебе даже больше скажу, скуль тебе подскажет SPID и номер транзакции, по которым ты потом быстренько найдёшь инфу в ТЖ
|
|||
44
H A D G E H O G s
12.10.21
✎
13:19
|
(43) SQL profiler без отборов тебе выдаст портянку в подмиллион строк в продуктивной системе, при этом, тормознет ее нехило и с ненулевым шансом, подвесит. Ты репу почешешь и скажешь - не смогла.
А ИР в (24) разбирает гиговые ТЖ за несколько минут, через внешние компоненты, но ты, скорее всего, даже его не щупал. |
|||
45
H A D G E H O G s
12.10.21
✎
13:20
|
Поэтому, в список, в список.
Вы особенно и опасны, что извлекаете из себя околоправильные вещи, с умным видом, которые оказываются вредными. |
|||
46
Конструктор1С
12.10.21
✎
13:24
|
(44) да-да-да, как бы не миллиард. Внезапно, есть событие lock:timeout, которое выводит _только_ таймауты. Профэссор, блин
На кой нужен этот ИР, когда с ТЖ прекрасно работается bash-утилитами? |
|||
47
pechkin
12.10.21
✎
13:26
|
(46) так нужен то не таймаут. таймаут - вот он в (0). нужен тот кто установил. а их миллионы может быть
|
|||
48
pechkin
12.10.21
✎
13:26
|
(46) вопрос из серии: зачем гуй, когда можно все командами
|
|||
49
ДенисЧ
12.10.21
✎
13:27
|
(48) вопрос простой - зачем набирать две строки непонятных символов (видео из ссылки выше), ошибаясь в каждой, если можно у гуе галками расставить?
|
|||
50
Конструктор1С
12.10.21
✎
13:27
|
(47) у него что там, гугловские запросы к регистру идут?
|
|||
51
Serpom
13.10.21
✎
04:48
|
(36) Не фоновое проводится без проблем. И без ожидания завершения (как я писал выше (9)), тоже проводится.
|
|||
52
pechkin
13.10.21
✎
09:08
|
Отключи эскалацию и попробуй еще раз
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |