Управляемые блокировки регистра бухгалтерии #501790


#0 by factorasia
В конфе установлен Управляемый режим блокировок транзакций. По разным счетам запись идет без блокировок, а по одному и тому же счету с разными субконто возникают ошибки блокировок транзакций. ... Как можно это обойти или это очередной "сюрприз" 1С?
#1 by saaken
посмотри реальную структуру таблиц регистра бухгалтерии и скажи мне по какой из них идет блокировка, и есть ли там субконто
#2 by factorasia
"..реальную структуру таблиц..". Это таблицу SQL, чтоли? Как ее посмотреть?
#3 by Amiralnar
Описание таблиц есть в книге "Профессиональная разработка в 1С:Предприятие"
#4 by factorasia
не совсем понятно, что я должен сказать
#5 by Живой Ископаемый
тебе как бы намекают, что несмотря на то, что ты установил значение фильтра для блокировки, по этому счету, или в этой
#6 by Живой Ископаемый
Таблице (тут я не совсем понял) субконто нет, и поэтому блокируется вся. Так же намекают, что у одного РБ несколько физических таблиц. И, Возможно посмотреть какая именно из них блокируется, возможно средствами СКЛ (не в курсе какими)
#7 by Рыжий Лис
Какой код приводит к возникновению блокировки?
#8 by factorasia
Проверял, если ли блокируемые счета без субконто. Есть такой счет, но там разные субсчета(в разных транзакциях счета 90.1.1 и 90.1.2 без субконто). Или 1с это пофигу, что разные субсчета? Собственно не код, а одновременные транзакции по регистру бухгалтерии. С регистрами накопления и сведений все норм.
#9 by Рыжий Лис
При записи? Режим разделения итогов включен?
#10 by saaken
если намеков не понимаете. блокировка идет по таблице итогов регистра, в которой есть Period     AccountDt    Счет Дт AccountCt    Счет Кт Fld18906    Организация Fld18907Dt    Валюта Дт Fld18907Ct    Валюта Кт субконто в другой таблице
#11 by factorasia
Понял. Значит, указывать субконто в блокировке не имеет особого смысла и в транзакции счет будет блокироваться целиком без фильтра по субконто?  Тогда область блокировки огромна! Вместо Кт 62.1 Субконто1 Фирма "Такая-то" Субконто2 Контрагент "Такой-то" Субконто3 Номенклатура "Такая-то" имеем заблокированный ВЕСЬ(!) счет 62.1 Или можно все же этот фильтр как-то задать?
#12 by saaken
не весь а в корреспонденции с другим счетом (если регистр имеет корреспонденцию), и даже если 1С исхитриться наложить свою внутреннюю блокировку и по субконто (что врят-ли, есть отдельная таблица движений с субконто) sql не даст записать одинаковые наборы данных одновременно
#13 by factorasia
У меня получается, что весь. Проводки первой транзакции: Дт62.1 Субкнто1(A), Субконто2(B), Субконто3(C)    Кт90.1.2 <Без субконто> Проводки второй транзакции: Дт62.1 Субкнто1(A), Субконто2(D), Субконто3(C)    Кт90.1.1 <Без субконто> Ошибка блокировки транзакций.  saaken, Че делать-то?
#14 by Рыжий Лис
Не все так страшно. Во-первых, основные таблицы РБ блокируются по регистратору. Во-вторых, у всех таблиц итогов РБ, есть возможность разделения итогов, что позволяет паралельно записывать итоги нескольким транзакциям одновременно. И, в-третьих, проблема, мне кажется, не в записи проводок, а в запросах к РБ, которые есть в обработке проведения.
#15 by factorasia
разделение итогов включено для всех регистров. Дедлоки возникают как раз во время записи движений в регистр бухгалтерии
#16 by Рыжий Лис
Дедлок, в основном, показатель непоследовательного чтения, чем проблем записи (если конечно не используется самостоятельная запись наборов). В любом случае его нужно внимательно анализировать либо ЦУПом, либо SQL Profiler.
#17 by saaken
если надо решение, то давай конфу и желательно хоть немного заполненную. в ЦУПе протестирую. Но Рыжий Лис прав, в твоем случае было бы превышение времени ожидания блокировки, а взаимоблокировки из-за кривых ручек
#18 by factorasia
Генерируется исключение: "РегистрБухгалтерии.РегистрДляПланаСчетов_Основной                                Ошибка при вызове метода контекста (Записать): Конфликт блокировок при выполнении транзакции: Превышено максимальное время ожидания предоставления блокировки из-за ожидания сессии 1416"
#19 by Рыжий Лис
Это не дедлок.
#20 by saaken
слишком много если: количество доков в час например, что за конфигурация, как установлена блокировка, если не правильно, то возможно не сработала, а 8.1 ругаться не будет на это извини помочь не могу
#21 by factorasia
можешь ЦУП скинуть?
#22 by Leksus
он денег стоит и немалых
#23 by factorasia
в интернетах пишут, что на итээсах есть
#24 by factorasia
это кип, вроде  платный
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С