#0
by vbuoc
hi, слыхал где-то, что если в хран.пр-ах. заменить Tablockx на rowlock - то проблема с блокировками будет практически решенаЭт чо правда что-ли??
#1
by Меланхоличный ворон
Правда, но неполная: если сделать только это, то проблемы только добавятся
#5
by Дяпти
А вот давайте МуМу спросим:МуМу! А если у меня в конфе никаких последовательностей нету и движения документа зависят исключительно от данных самого документа - мне можно убрать tablockx holdlock и я решу все проблемы с блокировками не нажив других?
#7
by МуМу
То 5. Зависит от конфы. В описанном случае проблем с грязным чтением не будет но почти однозначно будут деадлоки. Собственно говоря не раз уже проходил через такие конфигурации и видел к чему это приводило.Хотя и тут бывают исключение. Бухгалтерские конфигурации если работать в текущих периодах то этой проблемы подвержены меньше т.к. данные агрегируются только при работе задним числом - следовательно взаимных блокировок меньше.
#8
by vbuoc
не понимаю- ведь я всего лишь указываю скл чтобы тот блокировал тока строку таблицы а не ее саму
#12
by МуМу
ЧТо 8. то бы понимать советую сначала на тему деадлоков почитать что это такое. Ну и на тему грязного чтения.
#13
by vbuoc
Удалить механизм блокировок можно путем изменения хранимых процедур, через которые 1С проверяют таблицы на блокировки. А точнее, удалить хинты на блокировку таблиц.Например, в хранимой процедуре _1 sp __1 SJOURN _ TLockX в конструкции select @i=1 from _1SJOURN(TABLOCKX HOLDLOCK) where 0=1 необходимо удалить TABLOCKX HOLDLOCK.Также необходимо удалить соответствующие хинты(подсказки блокировки) в остальных таблицах относящихся к документам. Если этого не сделать то будут возникать deadlock -и – взаимоблокировки транзакций на уровне SQL server .
#14
by МуМу
То 11.Под агрегацией подразумевается денормализация данных-в данном случае хранение в нескольких таблицах. Отдельно движения и отдельно остатки и корресподенции.
#15
by Меланхоличный ворон
Модер может напомнить Раздел 2, пункт 9 правил. Кроме того, в таких случаях в приличном обществе нужно указывать авторство.
#16
by МуМу
То 13. Ну а что?Все логично. Таким образом мы снимаем монопольные блокировки но блокировки от MSSQL остаются в любом случае. В случае агрегаций они являются конфликтным множеством на которых и могут потенциально возникать деадлоки.
#17
by Железяка
Напоминаю. Раздел 2 п.9 правил:"Не следует копировать в ветки материалы каких-то веб-страниц. Лучше просто дайте на них ссылку"
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Хочу написать ВК на VB. С чего начать?
- Как перехватить удаление элемента справочника
- Камин. Расчет зарплаты 2.0. Знатокам.
- Налоговый учет в бухгалтерии 453
- Как программно закрыть Все окрытые окна в пределах окна 1С?
- Вызов процедуры документа из Журнала документов
- v8. Бюджетирование. Не формируются проводки по Бюдж. плану счетов..
- Потеря "Фокуса"
- Trial-заставка от Active Barcode - как избавиться?
- Открыть форму выбора справочника при нажатии Enter...
- ЗиК 7.7: документ провожу - в журнале расчетов не вижу ни одной записи. Почему?
- Как из модуля документа обратиться к данным, расчитанным в модуле формы?
- Кто-нибудь делал в 1С связь многие-ко-многим?
- 1С7: Операции, введенные вручную - теория.
- можно ли в запросе выразить число в строку?
- 1С 7.5 на XP при работе ошибки блокеровки файлов Error 50, 56, 110 ?
- Вопрос имеет ли 1С ограничение по количеству реквезитов в документе?
- номенклатура одна, а цены разные... как сделать подбор
- Не формируются проводки по 68 счету
- Как в форме установить поле списка на нужную строку?!