Начальные данные - конфигурация 1C ERP 2.4, платформа 8.3.12. Симптомы проблемы устойчивые и от объема пользовательских данных не зависят.
Рост потребления памяти для конфигуратора начинается при открытии любой формы.
Рост потребления памяти для rphost при первом подключении.
Поскольку конфигуратор тоже имел проблему с ресурсами, было решено проверить гипотезу о некорректных метаданных. Аномалия была локализована последовательным переносом всех доработок по типам объектов в типовую конфигурацию. При загрузке добавленных ролей был получен характерный рост потребления памяти. Поверхностный анализ явной проблемы не выявил, роли созданы по канонам ERP - одна настройка на чтение или изменение для одного конкретного объекта метаданных. Поэтому ничего лучше, как выгрузить конфигурацию в файлы и проверить исходники, я не придумал. Как оказалось, выгруженные роли занимают более 50% от общего объема и среди этих файлов есть 237 файлов Rights.xml по 20 Мб, общим объемом 4,42 Гб.
Просмотр первого попавшегося файла сразу же определил направление, куда копать. Для теста были созданы две роли на один и тот же объект. После выгрузки проблемная роль так же весила около 20 Мб, корректная роль чуть более 1Кб.
Итак, рецепт воспроизведения проблемы:
1) добавить роль;
2) Действия - Снять все права;
3) ... прочие действия по настройке прав;
4) PROFIT!!!
Теперь подробнее, роль создается с такими настройками по умолчанию, на все реквизиты всех объектов установлены права:
После снятия всех ролей права на доступ к реквизитам так же снимаются, но при включенной настройке "Устанавливать права для реквизитов и табличных частей по умолчанию" в настройках прав, помимо наших настроек, для всех реквизитов прочих объектов конфигурации фиксируется значение Ложь.
Починить такую роль можно двумя способами:
- отключить настройку "Устанавливать права для реквизитов и табличных частей по умолчанию";
- отключить/включить настройку для заполнения выключенных реквизитов.
После корректировки проблемных ролей потребление памяти значительно снизилось.
Дополнительная ссылка на статью.