Ошибка СУБД: Превышен максимально допустимый размер внутреннего файла 1Cv8.1CD
У клиента эта ошибка возникла при запуске файловой 1С:Розница. База в режиме 1С:Предприятия не открывается — программа сообщает, что «В данный момент вход в приложение невозможен, попробуйте войти позже».
Описание ошибки
При нажатии на «Показать подробности...» показывается следующий текст:
«Ошибка СУБД: Превышен максимально допустимый размер внутреннего файла ’C:\Base\Retail/1Cv8.1CD’».
Важно: расскажем, что было предпринято. Достаточно кратко. В статье не будем останавливаться на типовых вариантах и рекомендациях по исправлению. Рассматриваем частный случай с этой ошибкой.
Попытки восстановления
Параметры пользовательской среды:
- ✓ ОС Windows 10 22H2 Домашняя для одного языка x64;
- ✓ технологическая платформа 1С:Предприятие 8.3 (8.3.21.1393);
- ✓ конфигурация Розница (базовая), редакция 2.3 (2.3.10.61);
- ✓ программная лицензия для базовой версии.
Единственное, что получалось с базой — это ее открытие через Конфигуратор.
Не помогли:
- ▪ выгрузка и загрузка информационной базы через dt-файл;
- ▪ тестирование и исправление (ТиС) — с реиндексацией, сжатием таблиц ИБ, так и с полным набором опций;
- ▪ конвертация формата БД через cnvdbfl с увеличением размера страницы (формат по умолчанию 8.3.8, размер страницы — 8192).
Временный перенос ИБ в клиент-серверный вариант
Для этого мы выгрузили базу в dt-архив, и развернули его на тестовом сервере 1С:Предприятия. В качестве СУБД использовали MS SQL 2019. Стоит отметить, после этого в режиме 1С:Предприятия база открылась без ошибки.
Для определения размеров таблиц в SQL Management Studio открыли стандартный отчет «Использование дисковой памяти таблицами». Отсортировали «Данные (КБ)» по убыванию и вышли на таблицу dbo._InfoRg8415 c числом записей под 3 млн (2 756 719 записей).
Чтобы определить имя таблицы — использовали внешнюю обработку DBStorageStructureInfo-2.1.epf. Установили отбор по «InfoRg8415» и вышли на «РегистрСведений.ЗамерыВремени».
В настройках базы действительно была включена опция «Оценка производительности», но удаления замеров не происходило. Регламентное задание «Очистка замеров времени» было отключено, а при ручном запуске — завершалось ошибкой.
Администрирование — Обслуживание — Оценка производительности
В настройках параметров оценки производительности поставили значение «Удалять через: 1 дн.» и отключили галку «Оценка производительности».
Решили пойти методом грубой силы — зачистить таблицу средствами MS SQL. Выполнили в консоли запрос на очистку.
TRUNCATE TABLE dbo._InfoRg8415
После очистки регистра сведений с замерами времени открыли Конфигуратор и выполнили реиндексацию, реструктуризацию таблиц ИБ.
Финальный шаг: выгрузка dt-файла и загрузка в расположение файловой ИБ, проверка входа.
Выводы
✦ Виновник ошибки — распухший регистр сведений с замерами времени. Если в оценке производительности нет необходимости — отключайте. Либо проверьте, работает ли задание по очистке замеров с заданными параметрами.
✦ Эти записи появляются благодаря встроенной в БСП подсистеме «Оценка производительности» — подробнее на Инфостарт. Там же находится специальная обработка для очистки замеров.
✦ Жирный минус в том — по умолчанию замер производительности включен. Тех, кто работает на файловых базах и не знает про это, через некоторое время ожидает превышение максимального размера файла.
✦ Размер клиентской файловой базы с ошибкой после очистки уменьшился в 4 раза. Был 8 Гб, а стал 2 Гб.
__________
Что-то не так с 1С или нужна настройка?
► Оставьте заявку или позвоните +7-911-500-10-11 — разберёмся и поможем.