Запарил Конфликт блокировок при выполнении транзакции #161168


#0 by Троица
При проведении реализации с досадной периодичностью возникает этот самый Конфликт блокировок при выполнении транзакции. Математика 13. Это что особенность 13 математики?Дословно:Microsoft OLE DB Provider for SQL Server: Transaction (Process ID 63) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction.HRESULT=80004005, SQLSTATE=40001, native=1205по причине:Microsoft OLE DB Provider for SQL Server: Transaction (Process ID 63) was deadlocked on lock | communication buffer resources with another process and has been chosen as the deadlock victim. Rerun the transaction.HRESULT=80004005, SQLSTATE=40001, native=1205
#1 by Deryni
Что есть математика 13?13-й релиз платформы.Поставь 25-й попробуй
#2 by Троица
ХАХАХА!!!! Никак уже такая вышла? Это тема (простите) по v8...
#3 by Deryni
Извиняюсь. У меня все темы включены, а в самой теме не видно, по какой она версии.
#4 by Dymor
Это особенность конкретной конфигурации, которую тоже неплохо бы сообщать в подобных случаях.Отчего в принципе дэдлоки бывают, надеюсь, знаешь?
#5 by Троица
нет не знаю - расскажите плз
#6 by Троица
Конфигурация старая УТ, частично переписанная, в частности в модуле проведения реализации в ресурс себестоимость регистра продажи заносится пресловутая себестоимость
#7 by Троица
Up
#8 by fisher
Боюсь, тебе удаленно никто помочь не сможет.Слишком специфичная штука. Т.е. нужно анализировать твой конкретный случай, вплоть до профайлера. Тогда и станет ясно, это глюк платформы, или некорректно реализованный тобой код."Мёртвые" блокировки возникают, когда в двух параллельных транзакциях ожидается освобождение ресурса, заблокированного соседней транзакцией. Т.е. без вмешательства извне ожидание будет вечным. SQL-server выкупает эту шнягу и принудительно откатывает одну из транзакций.В правильно спроектированной системе такого быть не должно.А уж выяснить, кто фигню напроектировал, ты или разработчики, можно выяснить только на месте...
#9 by fisher
Если это твоих рук дело, то можно попробовать и удаленно разобраться в чем дело, если ты приведешь модуль проведения (ну и текст внешних функций, которые там используются).Может, кто-то и захочет покопаться, если время есть...
#10 by fisher
Правда, если конфликт возникает только при одновременном проведении документа какого-то другого вида, то и этой инфы будет мало...
#11 by Троица
Профайлером посмотрела. Периодически возникает событие TimeOut ни про какие дедлоки в профайлере ничего нету. Конфликт возникает ТОЛЬКО при проведении реализации.
#12 by Троица
В модуле проведения в процедуре "ДобавитьСтрокуВДвиженияПоРегистрамНакопления" при проведении по регустру "Продажи":
#13 by Троица
Упс, решила проверить как проводятся другие доки и выяснила, что еще 1С пишет про дедлок при проведении возврата! А в нем то точно никогада ничего не менялось!
#14 by Дятел
Виноват конечно регистр сведений, вернее, калечная его огранизация в движке 8. Всю историю цен желательно делать на подчиненных справочниках.
#15 by SilentMan
Действительно дятел ...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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