Имя: Пароль:
1C
1С v8
Документ вешает всех
0 Мэс33
 
24.06.13
13:42
В общем, есть один документ, он является регистратором только для одного регистра.
Используются управляемые блокировки: переписан код проведения, регистр переведен на упр.блокировку.
НО, если сотрудник делает проведение документа с кучей строк, и проведение затягивается по времени, то вешаются все. В консоли сервера вижу, что все стоят в очереди, именно те, которые работают с совершенно другими документами (к примеру, с кассовыми).
Но ведь документ не трогает другие регистры. В чем может быть дело?
1 Мэс33
 
24.06.13
13:43
Да, в качестве БД - используется Oracle. Конфа - УПП.
2 Maxus43
 
24.06.13
13:45
платформа?
3 Мэс33
 
24.06.13
13:46
1С:Предприятие 8.2 (8.2.15.301)
4 DEVIce
 
24.06.13
13:47
Управляемые блокировки точно ничего лишнего не блокируют?
5 Мэс33
 
24.06.13
13:48
(4) Вот кусок кода:

   Блокировка = Новый БлокировкаДанных;
   ЭлементБлокировки = Блокировка.Добавить();
   ЭлементБлокировки.Область = "РегистрНакопления.Полисы";
   ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
   ЭлементБлокировки.ИсточникДанных = ТзТч;
   ЭлементБлокировки.ИспользоватьИзИсточникаДанных("КлассификаторБСО", "КлассификаторБСО");
   ЭлементБлокировки.ИспользоватьИзИсточникаДанных("Номер", "Номер");
   Блокировка.Заблокировать();
6 saaken
 
24.06.13
13:48
документ в журнале используется?
7 Lama12
 
24.06.13
13:49
(0) Документ в последовательность входит?
База распределенная (под сомнением влияние)?
В общие журналы документ входит (тут не уверен)?
8 Мэс33
 
24.06.13
13:49
(6) Есть отдельный журнал.
9 Мэс33
 
24.06.13
13:51
(7) В последовательность не входит.
Не распределенная.
В общие - ща гляну - не, только в отдельный журнал.
10 saaken
 
24.06.13
13:53
тогда все окей, возникает вопрос с консолью сервера и утверждением что вешает именно этот документ
11 Сэкс
 
24.06.13
13:54
"переписан код проведения" - как он переписан если он новый и независимый?
12 Мэс33
 
24.06.13
13:55
(11) Вначале был в автоматическом режиме блокировки. Но вешались все, кто работал с этим регистром. Потом переписали. Стало намного легче.
Но иногда, иногда (раз в два дня) - документ вешает всех пользователей. И не пойму, почему это происходит.
13 Maxus43
 
24.06.13
13:58
(12) емнип в более поздних платформах (17-я вроде) было критичное обновление для Оракла, не вошедшее в описание исправленых ошибок. Было связано с жёсткими тормозами при удалении больщих временных таблиц
14 Мэс33
 
24.06.13
13:59
(13) Кстати, используется менеджер временных таблиц.
15 Lama12
 
24.06.13
13:59
(13) Как меня радуют эти критические исправления, которые не входят в описания. Хрен потом найдешь что да как. :(
16 Lama12
 
24.06.13
13:59
(14) Ну так обновляемся :)
17 Мэс33
 
24.06.13
14:00
(14) Временные таблицы потом принудительно уничтожаются. Попробовать их не удалять?
18 Мэс33
 
24.06.13
14:01
(16) Да, надо. Все собираюсь на 18 релиз перейти. Не глядя опасаюсь, а тестового сервера пока временно нет.
19 Maxus43
 
24.06.13
14:01
(14)(15) это почти инсайдерская инфа)
Суть там была в том что вместо аналога дропа таблицы - удалялись по одной записи.
(17) не уверен что поможет, ибо она всё равно будет удаляться платформой автоматически при уборке "мусора"
20 Мэс33
 
24.06.13
14:04
В общем на ум приходит только одно - обновлять платформу.
21 Maxus43
 
24.06.13
14:07
(20) это первое что надо сделать. С учетом того что было переписано - есть вариант что и не из-за этого... может ещё где косяк. В любом случае смысла сидеть на 15-й не видно
22 Мэс33
 
24.06.13
14:09
(21) ясно. Спасибо.
23 ИС-2
 
naïve
24.06.13
14:13
(0) может в планах обмена документ где-то засветился?
24 Мэс33
 
24.06.13
14:16
(23) проверил, в планах обмена документ не значится.
25 Maxus43
 
24.06.13
14:21
проведи эксперимент.

сделай обработочку в запросе в которой бет ВТ на 5-10 млн записей, и сделай там Уничтожить ВТ. Если юзеры "зависнут" то это оно и есть
26 ИС-2
 
naïve
24.06.13
14:22
а какие измерения у регистра? Я думаю, надо копать в сторону запроса и записи в регистр. Советую переписать код. 1C рекомендует делать контроль остатков так: записываем данные в регистр, проверяем остатки.
27 Мэс33
 
24.06.13
14:24
(26) Так и сделано: сначала пишется в регистр, потом идет проверка остатков.

Чаще всего документ проводится в четверть секунды. Но иногда происходит то, что написано в теме поста.
28 Мэс33
 
24.06.13
14:26
(26)
Измерения:
КлассификаторБСО - справочник КлассификаторБСО
Номер - число
МОЛОтветственый - справочник ФЛ
ПодразделениеОрганизации - справочник подразделения организаций
МОЛПолучатель - справочники ФЛ/Контрагенты
29 ИС-2
 
naïve
24.06.13
14:27
(27) ну тогда не знаю. Но все равно советую почитать
Блокирующее чтение остатков в начале транзакции
30 Мэс33
 
24.06.13
14:29
(29) В любом случае - другие документы тут причем? Ведь их регистры не затрагиваются.
31 pavig
 
24.06.13
14:33
(30) возможно, что в этот момент блокируется чем-то другим?
ведь ты же сам написал, что подобная ситуация возникает время от времени, а не всегда
попробуй в отладке поставить точку останова в модуле проведения какого-нить такого блокирующегося документа и в параллельном сеансе провести твой документ
далее посмотри: если проведется - значит действительно не блокируется, проблема где-то непонятно в чем, иначе - проблема в том что все-таки где-то блокируется твоим документом
32 Мэс33
 
24.06.13
14:39
(31) "далее посмотри: если проведется - значит действительно не блокируется, проблема где-то непонятно в чем, иначе - проблема в том что все-таки где-то блокируется твоим документом"


ого...

Сегодня такая блокировка произошла утром, повисли тупо все. Пришлось выбросить пользователя.
Ладно.. покопаемся.
33 ИС-2
 
naïve
24.06.13
14:42
(30) а может какая-то последовательность? Журнал документов и т.д. Для опыта советую убрать все ссылки на этот объект
34 ИС-2
 
naïve
24.06.13
14:43
(32) может, кто-то знает как узнать какая таблица заблокировалась?
35 pavig
 
24.06.13
14:43
(32) да это не долго и не трудно, не пугайся, нужна всего лишь тестовая база и 5-10 минут времени
36 pavig
 
24.06.13
14:44
(34) как вариант - ЦУП, реально поможет
или ТЖ (трудно, долго, не факт что поможет)
или аналог профайлера скуля (если конечно на оракле есть - я не знаю)
37 Мэс33
 
24.06.13
14:45
(35) Нюанс то в другом:
виснут другие документы, когда проводится наш проблемный документ. То есть надо его тормозить точкой останова.
38 Мэс33
 
24.06.13
14:45
(36) ЦУП с Ораклом дружит?
39 ИС-2
 
naïve
24.06.13
14:45
(32) это действительно очень просто
40 Maxus43
 
24.06.13
14:52
(38) как раз аналог профайлера скуля оракловский намного круче, им выявилась проблема с ВТ. проведи (25), если оно - то всё остальные вопросы снимаются
41 pavig
 
24.06.13
15:02
(38) может и нет, сорри))
остается тогда ТЖ и еще вроде у Гилева сервис есть (поищи на форуме и на ИС)
42 Мэс33
 
24.06.13
15:06
Спасибо за советы. Бум пробовать.
43 Maxus43
 
24.06.13
15:16
(42) результаты эксперимента на 15-й платформе огласи, интересно
44 Мэс33
 
24.06.13
15:23
(43) Я ветку добавил в избранное - как тестовый инстанс освободится - попробую.
Независимо от того, куда вы едете — это в гору и против ветра!