Влияние настройки роли на потребление памяти

29.01.19

Администрирование - Роли и права

На днях разбирался с проблемой с потреблением памяти процессами конфигуратора и rphost. Как оказалось - причина в настройках ролей. Один поворот не туда, и настройки роли приводят к чрезмерному потреблению оперативки.

Начальные данные - конфигурация 1C ERP 2.4, платформа 8.3.12. Симптомы проблемы устойчивые и от объема пользовательских данных не зависят.

Рост потребления памяти для конфигуратора начинается при открытии любой формы.

Рост потребления памяти для rphost при первом подключении.

Поскольку конфигуратор тоже имел проблему с ресурсами, было решено проверить гипотезу о некорректных метаданных. Аномалия была локализована последовательным переносом всех доработок по типам объектов в типовую конфигурацию. При загрузке добавленных ролей был получен характерный рост потребления памяти. Поверхностный анализ явной проблемы не выявил, роли созданы по канонам ERP - одна настройка на чтение или изменение для одного конкретного объекта метаданных. Поэтому ничего лучше, как выгрузить конфигурацию в файлы и проверить исходники, я не придумал. Как оказалось, выгруженные роли занимают более 50% от общего объема и среди этих файлов есть 237 файлов Rights.xml по 20 Мб, общим объемом 4,42 Гб.

Просмотр первого попавшегося файла сразу же определил направление, куда копать. Для теста были созданы две роли на один и тот же объект. После выгрузки проблемная роль так же весила около 20 Мб, корректная роль чуть более 1Кб.

Итак, рецепт воспроизведения проблемы:

1) добавить роль;

2) Действия - Снять все права;

3) ... прочие действия по настройке прав;

4) PROFIT!!!

Теперь подробнее, роль создается с такими настройками по умолчанию, на все реквизиты всех объектов установлены права:

После снятия всех ролей права на доступ к реквизитам так же снимаются, но при включенной настройке "Устанавливать права для реквизитов и табличных частей по умолчанию" в настройках прав, помимо наших настроек, для всех реквизитов прочих объектов конфигурации фиксируется значение Ложь.

Починить такую роль можно двумя способами:

- отключить настройку "Устанавливать права для реквизитов и табличных частей по умолчанию";

- отключить/включить настройку для заполнения выключенных реквизитов.

После корректировки проблемных ролей потребление памяти значительно снизилось.

Дополнительная ссылка на статью.

Вступайте в нашу телеграмм-группу Инфостарт

конфигуратор метаданные оптимизация роли права rphost

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С:Предприятие 8 Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    255622    1412    421    

1154

Зарплата Роли и права Системный администратор Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Молдова Россия Казахстан Бухгалтерский учет Платные (руб)

Расширение позволяет максимально полно ограничить доступ пользователей к данным по заработной плате, а именно закрывает доступ к документам начисления и выплаты заработной платы, не позволяет просматривать бухгалтерские отчеты по счету учета зарплаты а также убирает зарплатные проводки из журнала проводок. Расширение запрещает просматривать платежные документы на выплату зарплаты, так же не доступны регламентные отчеты в ПФР и ИФНС. Расширение предлагает готовые настроенные профили "Бухгалтер без зарплаты", "Только просмотр без зарплаты".

9675 руб.

27.05.2021    54822    467    127    

333

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    24799    93    42    

101

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.04.2026, версия 1.4.1, работает в 1С:ФРЕШ!

24400 руб.

06.12.2023    22254    80    10    

113

SALE! 20%

Роли и права 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Универсальная обработка по настройке прав доступа пользователей в 1СЗУП, КА, УТ, ЕРП, ERP, УНФ, Розница, Управление холдингом) и разграничений позволяет в несколько кликов настроить даже самые нестандартные права.

5750 4600 руб.

22.12.2021    35766    200    69    

231

Логистика, склад и ТМЦ Роли и права Программист Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Расширение для 1С:Бухгалтерия 3.0, которое позволяет использовать отдельные роли для доступа к складским документам, для доступа к документам раздела "Производство" и для доступа к документам раздела "Покупки".

5084 руб.

21.05.2019    1701722    598    197    

147

Роли и права Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия Платные (руб)

Получение необходимой информации по правам доступа в разрезе групп доступа, профилей групп доступа, пользователей / групп пользователей, объектов конфигурации и ролей. Легко можно настроить состав и порядок вывода информации по правам, настроить необходимые фильтры и получить более детальную расшифровку по группировкам отчета.

5000 руб.

16.11.2015    53469    99    46    

161
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Shmell 660 29.01.19 13:23 Сейчас в теме
Интересно капнули. Меня всегда напрягало что при открытии редактора форм в конфигураторе ERP - съедалось более 1,5 ГБ памяти
nomad_irk; +1 Ответить
2. zqzq 25 29.01.19 13:29 Сейчас в теме
1) добавить роль;

2) Действия - Снять все права;

Для новых ролей достаточно снять ненужные права на корне конфигурации, остальные права (на справочники, подсистемы, константы и т. д.) и так отключены.

Никогда не использовал "Снять все права" -- как теперь выяснилось, и правильно.
mitia.mackarevich; Plotks2017; jif; mvk4d; +4 Ответить
3. arakelyan 400 29.01.19 15:48 Сейчас в теме
Убежал проверять...
4. ImPenguin 35 30.01.19 08:45 Сейчас в теме
А с типовыми ролями как быть, там ведь поголовно такая фигня?
5. mickey.1cx 409 30.01.19 10:13 Сейчас в теме
(4) есть такое. Либо самому править, либо фиксировать ошибку в 1С и ждать пока зайдут изменения с обновлениями.

Дмитрий74Чел; +1 Ответить
6. mickey.1cx 409 30.01.19 10:32 Сейчас в теме
Копание в исходниках оказалось довольно интересным занятием. так же были обнаружены два макета табличных документов, в распакованном виде 100 и 40 Мб, в mxl - 24 и 7 Мб соответственно. Ошибка в структуре, после строк с данными разрыв строк на пять и продолжение структуры таблицы вплоть до строки с индексом 65535. После операций копирования содержимого, удаления и вставки обратно размер документов после сохранения стал 15 и 24 Кб. Мелочь на общем фоне, а приятно :)
CheBurator; Kolunya; tormozit; JohnyDeath; sorb; A_Max; WellMaster; +7 Ответить
7. gubanoff 63 31.01.19 17:33 Сейчас в теме
(0) на платформе 8.2.18.109 не работает - какие флажки у роли не ставь, снимай все права, ставь все права - при выгрузке файл формируется одного и того же размера и в нем все равно указаны все объекты.
SirStefan; +1 Ответить
8. mickey.1cx 409 31.01.19 21:15 Сейчас в теме
(7)
Выгрузка в файлы в 8.2 - аналог ключа /DumpConfigFiles
В 8.3 появилась выгрузка в файлы с ключом /DumpConfigToFiles
В первом случае роли выгружаются с настройками по всем объектам конфигурации.
Во втором - как раз, то что нужно.
9. PerlAmutor 161 01.02.19 17:43 Сейчас в теме
(0)
На своем сайте выпишите:

Чтобы исправить роль, необходимо выключить и включить настройку "Устанавливать права для реквизитов и табличных частей по умолчанию"


Тут написали:


Починить такую роль можно двумя способами:

- отключить настройку "Устанавливать права для реквизитов и табличных частей по умолчанию";

- отключить/включить настройку для заполнения выключенных реквизитов.


Хочу предостеречь желающих "починить" таким образом. Когда вы попытаетесь нажать на птичку "Устанавливать права для реквизитов и табличных частей по умолчанию" - система вас спросит, а действительно ли вы хотите снять/установить настройки для всех реквизитов и табличных частей? И вот тут надо хорошенько подумать что вы тем самым делаете. У меня есть роли, мои, не типовые. Обе на один документ. Обе позволяют документ читать и писать. Но есть нюанс, вторая роль сделана для пользователей, которые имеют право на просмотр и изменение всего лишь одного реквизита в документе. В этом документе содержится финансовая информация не для посторонних глаз. "Починив" роль вышестоящим образом вы откроете пользователям шикарные виды на размеры определенных выплат. К тому же я видел несколько типовых ролей в ERP где доступ на просмотр тоже есть у пары реквизитов, которые используются в отчетах.
mickey.1cx; +1 Ответить
10. mickey.1cx 409 01.02.19 23:26 Сейчас в теме
(9) хорошее замечание. Возьму на заметку, что подобные роли стоит выделять наименованием, чтобы не забыть. Вроде, мод_ЧтениеДокумента_Реквизиты.
11. PerlAmutor 161 02.02.19 07:43 Сейчас в теме
(10) Кстати я так и не понял откуда у вас взялись роли по 20Мб. В моей старой ERP (2.1.3.93) самая "большая" роль "РазделCRMИМаркетинг" - 10Мб в XML. В новых версиях ERP она отсутствует.
12. mickey.1cx 409 03.02.19 00:10 Сейчас в теме
(11) в типовой 2.4.2.144 ЧтениеПретензийКлиентов, ДобавлениеИзменениеПретензийКлиентов уже 16,3 Мб. Плюс доработки внесли свой вес.
13. tormozit 7374 14.04.19 09:11 Сейчас в теме
ОШибку в 1С отправили?
14. toxilamer 43 16.09.19 08:15 Сейчас в теме
Понравилась данная статья. Спасибо.
Вдохновившись, автоматизировал исправление ролей по избыточности настроек:
https://infostart.ru/public/1118568/
mickey.1cx; +1 Ответить
16. tvssm 10.11.20 12:17 Сейчас в теме
Интересное расследование, мне понравилось.
17. Дмитрий74Чел 249 31.05.24 16:20 Сейчас в теме
отключить/включить настройку для заполнения выключенных реквизитов.

Не понял, это где?
ОператорПК; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация