Разберем ситуацию, когда база 1С:Бухгалтерия 3.0 значительно выросла в объеме (более 100 Гб), и запуск процедуры перепроведения документов вызывает взаимные блокировки, не позволяя пользователям полноценно работать в системе. Мы проанализируем причины такого поведения и рассмотрим шаги, которые помогут вернуть стабильность в работу предприятия.
Первым делом важно понять, почему параллельная работа становится невозможной. Перепроведение по партиям — это операция, требующая массового изменения записей в регистрах накопления и бухгалтерии. Когда база достигает больших размеров, длительность каждой транзакции возрастает. В момент записи система устанавливает блокировки на таблицы _AccRg (регистры бухгалтерии) и _AccumRg (регистры накопления). Если другие пользователи в это же время пытаются проводить свои документы, возникают конфликты блокировок (Deadlocks) и «неопределенные ошибки».
Прежде чем принимать радикальные меры, проведем глубокую диагностику. Выполним следующие шаги:
SQL Server Management Studio, определим таблицы, занимающие больше всего места. Если основная нагрузка приходится на _AccRg и _AccumRg, значит, проблема именно в интенсивном пересчете итогов..dt, это тревожный сигнал. Возможно, в базе накоплен «мусор» или существуют логические повреждения, требующие исправления.Рассмотрим конкретные шаги, которые мы можем предпринять для улучшения производительности:
Важно убедиться, что на сервере настроен правильный план обслуживания. Простого перестроения индексов недостаточно. Мы должны:
Update Statistics) с параметром FULLSCAN. Актуальная статистика позволяет планировщику SQL выбирать оптимальные планы запросов.Auto Shrink, так как он вызывает деградацию производительности при попытках системы автоматически сжать файлы базы данных.Если используется ветка платформы 8.3.18, рассмотрим переход на более стабильные современные релизы (например, 8.3.22 и выше). Это часто решает скрытые проблемы с управлением транзакциями, характерные для старых версий.
Попробуем выполнить следующие действия в копии базы:
.cf для приведения структуры таблиц к эталонному состоянию.Необходимо признать технический предел системы. Если база достигла объема в 100 Гб и содержит данные за 10+ лет, «волшебной кнопки» для ускорения не существует. Мы можем предложить руководству:
РегламентныхЗаданий.В заключение, проанализируем текущие настройки: убедимся, что блокировки регламентных заданий в свойствах базы не установлены, и проверим планы обменов, если используется РИБ, так как разросшаяся таблица изменений также может быть причиной тормозов. Совместными усилиями администрирования и программирования 1С мы сможем стабилизировать работу системы.