#0
by vasbur
У объектов типа СправочникОбъект, ДокуменОбъект есть метод "Заблокировать" Как он технически реализован? Где 1С хранит информацию о блокировках? Создает ли использование этого метода транзакционную нагрузку на СУБД?
#1
by Господин ПЖ
>Где 1С хранит информацию о блокировках? если вкл. упр. блокировки - на сервере приложений
#3
by Господин ПЖ
>Создает ли использование этого метода транзакционную нагрузку на СУБД? в зависимости от пользуемого режима блокировок в конфе/объекте
#8
by Господин ПЖ
>А что происходит, когда серверов придожений несколько? кластер из нескольких серверов? один из них становится менеджером блокировок
#11
by Jaap Vduul
Как правильно заметили в с управляемыми блокировками этот метод никак не связан. В базе данных его вызов также никаких изменений не производит. Данные о блокировке хранятся либо на сервере приложений , либо в файле *.1cl (для файловых баз 1цэ)
#12
by Господин ПЖ
во что нашел из старой ветки Смысл метода Заблокировать в следующем. 1.У каждого объекта в базе есть поле Версия (просто число). 2.При каждой записи объекта это число увеличивается в транзакции записи. 3.При чтении объекта из базы его версия тоже читается. 4.А при записи объекта, в транзакции записи всегда проверяется соответствует ли версия в базе, версии объекта в памяти (ранее прочитанного). Если не соответствует, то происходит исключение. Т.о. платформа проверяет не записал ли какой нить другой пользователь объект в период времени между того момента когда его читали (ПолучитьОбъект) и сейчас, когда его записывают. Если объект уже успел кто-то записать, то вероятно он мог изменить какие-то его реквизиты, и т.о. в памяти сейчас лежит неактуальная его версия, и писать эту версию в базу нельзя. 5.Метод Заблокировать просто увеличивает версию на 1, и записывает это значение в базу (и память своего объекта конечно). Конечно же проверяя перед этим не изменился ли объект в базе уже сейчас, в момент выполнения Заблокировать в и наврал
#13
by TormozIT
Метод Заблокировать устанавливает пессимистичную объектную блокировку, хранимую в менеджере кластера либо файле объектных блокировок файловой базы. Он не связан с реквизитом ВерсияДанных. Реквизит ВерсияДанных используется при оптимистичной объектной блокировке.
#15
by Reaper_1c
В рамках кластера есть сервисы. Блокировки хранят узлы кластера с развернутым сервисом блокировок объектов. Репликацией данных об объектных блокировках сервер занимается самостоятельно.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Не работает функия вопрос() в 8-ке/в SQL не работает в файл серверной работает
- Функция СводныйОстаток не работает на сервере, а на локальной базе работает
- Две организации в 1с, технически понятно, а вот правильно ли
- v7: метод УстановитьФильтр, работает только в паре с методом Выгрузить
- Не работает сортировка в СКД на одном клиенте, а на другом - работает
В этой группе 1С
- Карточка счета отбор по пустому субконто
- После перехода на платформу 8.3 не видит лицензию
- Не отображается отбор в настройках отчета у клиента
- Комплексная. Корректировка налога на имущество прошлых лет. Help!!
- СКД Произведение в вычисляемом поле
- Как скопировать таблицу значений
- СКД. Период по неделям, месяцам
- УТ 10.3 Ввести разные префиксы для оптовой и розничной торговли
- БГУ заполнение 0503127
- парсер запросов
- КД перенос справочника номенклатура, как перенести родителя?
- Почему не работает Формат в вычисляемом поле СКД или как убрать время из даты
- Программно сохранить из 1С в WORD
- v7: Разность дат в запросе
- v7: Прямой запрос по текущему документу из регистра
- Запрет списания со склада в УТ 10.3
- Добавление итоговой суммы в списке документов Требование-накладная
- v8: Отображение даты в СКД
- Налоговый учет ОС непроизводственного назначения
- 1С8 групповая обработка 2 акта на одном листе