Помилка - Перевищено максимально допустимий розмір внутрішнього файлу

розмір

При використанні файлового варіанта інформаційних баз, нерідко з'являється помилка "Перевищено максимально допустимий розмір внутрішнього файлу", пов'язана насамперед з особливостями реалізації самого файлового режиму. До його складової входить 4 файли:

  • Файл опису структури таблиці
  • Файл індексів (винесено з основного файлу)
  • Файл значень
  • Файл записів

Для вирішення цієї проблеми необхідно обчислити, яка саме таблиця займає дуже багато місця. Для цього можна скористатися сторонньою програмною Tool_1CD, яка дозволяє зазирнути всередину файлу 1Cv8.CD, а саме визначати розмір таблиць, робити вивантаження в XML формат і багато іншого.

розмір

Для вирішення необхідно зменшити розмір цієї таблиці або перевести в SQL варіант. Оскільки придбати SQL сервер досить затратно, досвідченим шляхом шукаємо цю таблицю. Зазвичай це бувають "важкі документи" з великою табличною частиною, громіздкі довідники, особливо часто регістри накопичення. Насамперед видаліть з бази всі позначені видалення елементи. Потім зробіть перерахунок підсумків (якщо «косяк» у регістрі накопичення, то іноді допомагає). Регістри залишків можуть неправильно закриватися, що призводить до різкого розростання таблиць підсумків. Списання «завислих» залишків може звільнити до кількох Гб.

Буває так, що всі таблиці менші за 4 ГБ, але помилка все одно виникає. Ця ситуація набагато складніша. Тут криється проблема в структурі матаданих конфігурації, а саме в індексації. У момент завантаження інформаційної бази з dt файлу насамперед завантажуються дані всіх таблиць, а потім — індекси. У якийсь момент створення індексу виникає помилка інаступні індекси не створюються, що припиняє завантаження та викликає помилку. Для того, щоб дізнатися яка таблиця збоїть при створенні індексу-робимо таке:

  • Включаємо технологічний журнал
  • Створюємо порожній файл ogcfg.xml наступного наприклад змісту

і кладемо його в каталог conf, наприклад C:\Program Files\1cv82\8.2.19.130\bin\conf

  • перевіряємо, щоб логи та файли створювалися та перезапускаємо конфігуратор та починаємо завантаження заново. після виникнення помилки йдемо в log файл у нашій кнопці C:\log\error, відкриваємо і шукаємо на якому індексі з'явилася помилка.
  • Далі за допомогою програми Структура зберігання таблиць бази даних шукаємо сам об'єкт метаданих.
  • Ну а далі досвідченим шляхом шукаємо або довгих реквізит цього об'єкта, або властивості, що призводить до збою побудови індексу і продовжуємо пробувати, пробувати і пробувати, доки не прийдемо до рішення.
  • Після вдалих маніпуляцій тілом тестування та виправлення. У результаті всі індекси перебудуються заново і база буде повністю працездатна. Успіхів!