очень частые блокировки транзакций #606057


#0 by mnail1979
Здравствуйте, уважаемые профессионалы. 1С 8.1 УПП. Одновременных пользователей 15. Очень часто выходят взаимоблокировки транзакций. ЦУП у меня нет. Как понять и исправить эту проблему?
#1 by DrShad
какая таблица блокируется?
#2 by Klesk
файловая или какая?
#3 by mnail1979
клиент сервер. SQL server 2008 R2
#4 by mnail1979
а как понять какая блокируется
#5 by mnail1979
Ошибка при вызове метода контекста (Выполнить). Ошибка выполнения запроса "конфликт блокировок при выполнении транзакции: Microsoft OLE DB Provider for SQL Server. Транзакция (идентификатор процесса 62) вызвала взаимоблокировку ресурсов блокировка с другим процессом и стала жертвой взаимоблокировки. Запустите транзакцию повторно. Это при проведении документа реализации.
#6 by МихаилМ
настройте тех.журнал  на сбор информации по блокировкам
#7 by Один С
15 пользователей и частые блокировки... много думал...
#8 by mnail1979
а как это. Я новичок в этом деле. Подскажете?
#9 by Живой Ископаемый
в 8.1 уже был ТЖ?
#10 by МихаилМ
да. был.
#11 by mnail1979
можете по шагам расписать, что мне нужно делать. Я читал разные статьи, где советовали переходить с автоматического режима на управляемый и автоматический и т.д. Но по шагам было бы лучше.
#12 by МихаилМ
пришло время почитать руководство администратора 1с. а еще лучше руководство разработчика и администратора ms sql. сдаётся мне: Вы не владеете базовой терминологией, так что пошаговая инструкция Вам не положена.
#13 by mnail1979
:(
#14 by mnail1979
я работал на оракле. С MS SQL я новичок
#15 by mnail1979
ТЖ мне поможет, или нужен еще обязательно ЦУП?
#16 by МихаилМ
тж поможет . цуп использует тж. после мониторинга не забудте отключить логирование тж.
#17 by mnail1979
прочитал статью На одном из запросов решил попробовать параметр ДЛЯ ИЗМЕНЕНИЯ. Скажите, плиз, есть ли у него недостатки. Или его можно лепить где попало.
#18 by Aleksey
А что думать. У меня блокировки на равном месте иной раз выскакивают. Т.е. сижу в базе один (типовая БП), никого нет. Запустил проведения - и бац, не могу провести ... блокировка. Так что подпишусь на тему, сам хотел создать, да всё руки не доходят.
#19 by Kraft
не в тему, но отпишу тут. В последнее время (после перехода на 8.2.15) стали происходить интересные глюки с блокировками. При попытке что-то сделать, например провести документ, ругается, что объект уже открыт и изменяется другим пользователем с таким-то номером сеанса. Так вот дело в том, что такого сеанса уже давно нет, и пользователь (на которого ссылается система) новых сеансов не открывал. Рестарт сервера 1с не помогает (!!!). Ситуацию спасает лишь рестарт ms sql. Такая ситуация проявлялась уже 2 раза за 2 месяца.
#20 by Aleksey
Во-во, до 8.2.15 тоже небыло блокировок в чистом поле. Т.е. запускаешь на ночь перепроводку и к утру готовый результат. Сейчас - нет гарантии
#21 by Wern
Прочитал что при зубной боли помогает шалфей и решил все болезни лечить им? Проблему надо решать, а не лепить что попало и где попало.
#22 by Wern
фоновые задания смотрите, только они могут создать блокировку на одном пользователе.
#23 by демотиватор
что делают эти пользователи?
#24 by Aleksey
Обычно фоновые в ЖР пишутся. А так из фоновых только Регламентное задание. Обновление индекса полнотекстового поиска
#25 by Один С
ну дык запретите регламенты на сервере, да посмотрите что получится..
#26 by aspirator23
Расскажи о своем sql сервере. Как он устроен?
#27 by mnail1979
Железо?
#28 by Гот
Кальций. В модуле документа реализации Через строку вставь Сообщить("Дошел до строки " + НомерСтроки); При проведении все, что после нужной строки - удали. Обнови конфигурацию - не будет блокировок. Гарантирую.
#29 by Гот
Номер строки - в смысле номер строки текста модуля.
#30 by mnail1979
как можно просто удалить. Раз написано - значит нужно...
#31 by mnail1979
вот скриншот: Подскажите, как решить взаимоблокировку
#32 by Aleksey
УРИБ нет? А то у меня оказалось куча почек (остатки былой роскоши) с еще большей кучей зарегестророванных изменений в не (по 3-4 ляма в каждой почки). И из-за этого выскакивали блокировки
#33 by mnail1979
не понял
#34 by Зеленый Кот
>> куча почек? надолго задумался...
#35 by Stepa86
а давно в УПП есть документ ЗакрытиеРейса?
#36 by mnail1979
это УПП с большими дописками
#37 by Stepa86
вот эти дописки и делают дедлоки, обращайся к авторам
#38 by mnail1979
К сожалению к авторам обратиться не могу. Сам потихоньку им становлюсь. Поэтому нужно разобраться самому
#39 by Aleksey
Что такое УРИБ и План обменов не знаешь? Или что не понятно?
#40 by Aleksey
А как их назвать?
#41 by mnail1979
В документе есть запрос, который читает данные с регистранакопления. Был такой запрос:
#42 by Aleksey
Конечно тебе же с места виднее, вот так сразу глянул на кофейную гущу и сразу видно - что дописывал олень, он виноват. И главное так авторитетно и безапелляционно заявлешь об этом, как будто код видел
#43 by mnail1979
возможно (точно не могу утверждать) после того, как я его изменил, это все и началось. Вот измененный вариант:
#44 by Stepa86
а разве из не очевидно? и чот я сомневаюсь, что типовая чистая УПП в дедлоки падает при 15 пользователях
#45 by Aleksey
Я могу тебе и в типовой БП с 3-мя пользователями дедлоки сделать. И что?
#46 by Stepa86
попробуй поле Рейс проиндексировать у регистратора... хотя так то херого, что обращаешся к реальной таблице и скриншот при этом от ЦУПа покажешь, где дедлок на доработку завязан?
#47 by mnail1979
может я запрос не правильно написал. Как видите, раньше все было через товарынаскладах.остатки, а я переделал на просто новарынаскладах, чтобы выйти на рейс через регистратор. Может надо как то по другому. Я новичок в 1С. Можно ли как то используя ВТ остатки выйти в данном случае на рейс, или добавить в этот регистр еще один реквизит "рейс"
#48 by mnail1979
прикол в следующем. Кто то другой проводит документ реализация. В это момент запускается запрос другим пользователем, который я указал выше. И получается взаимоблокировка, так как почему то мой запрос через регистр выходит тоже на документ реализации. Вот и думаю, если все же сделать запрос через ВТ остатки, путь запроса будет таким же или нет.
#49 by МихаилМ
в 43 такой запрос в модуле проведения в 8.1 заблокирует всю таблицу движений. тк уровень изоляции - serializeble
#50 by mnail1979
вот вот. Поэтому думаю вернуться на остатки, но при этом добавив в регистр новый реквизит "рейс"
#51 by mnail1979
точнее новое измерение
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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