18.06.2024, 16:25 | #1 |
Участник
|
Как понять, что происходит ?
Добрый день
Помогите, пожалйста, понять, что поисходит Виснет экспорт данных через entity в data management в файл Виснет и при ручном запуске и при запуске в батч Виснет на вот этом месте, что в скринщоте dmfEntityProxy объявлен как: X++: CLRObject dmfEntityProxy = new CLRObject('Microsoft.Dynamics.AX.Framework.Tools.DMF.ServiceProxy.DmfEntitySharedTypesProxy'); На базе данных локов нет. В trace parser ничего не нахожу особенного.. В event log проскакивает строчка: "The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID {XXX} and APPID {YYYY} to the user NT AUTHORITY\NETWORK SERVICE SID (S-1-5-20) from address LocalHost (Using LRPC) running in the application container Unavailable SID (Unavailable). This security permission can be modified using the Component Services administrative tool." Посмотрела в реестре, это Microsoft.SqlServer.Dts.Server.DtsServer Но : 1) Я не нахожу в Component Services этот DtsServer (или не знаю как искать. Вроде. поиска там нет. Глазами проверила папки). Попробовала в реестре добавить Full control permissions для NETWORK SERVICE для всех ключей с нужными {XXX} , но не вижу эффекта (не работает экспорт все еще) 2) Этот же экспорт не виснет, если данных в 2 раза меньше (500к , а не 1 млн) 3) Когда запускаю экспорт тот, что работает (на половину данных ) эта ошибка все равно поскакивает. Как выгребать? Можно как-то продебаггить ? Help Последний раз редактировалось Lankey; 18.06.2024 в 16:34. |
|
18.06.2024, 16:33 | #2 |
Участник
|
Проблема вряд ли в количестве данных, тк на другом environnement сейчас все наоборот с той же entity 3 млн экспортируется ок, за 4 минуты, а на 1 млн ,то есть, меньшее количество, виснет ((
(Но там продебаггить не могу, тк версия другая). Хочу тут пока понять, что происходит PS: Нашла компонент c APPID {YYYY} в Component services . Он там называется Microsoft SQL Server Integration Services 15.0 Последний раз редактировалось Lankey; 18.06.2024 в 17:05. |
|
18.06.2024, 20:34 | #3 |
Участник
|
TraceParser - инструмент по аудиту исходного кода Аксапты. В данном случае управление отдаётся JIT'у, который находится вне рамок её компетенции (он и эмулирует саму Аксапту с определенной её версии).
Вы ограничены лицензионным соглашением MS, в котором запрещается осуществлять дезасемблирование исходного кода (если лично MS не предоставили такие полномочия) дополнительных компонентов. Поэтому можете просто поиграться с параметрами инициализации объекта и вызова данной функции (helper параметр на изображении), либо сразу зарегистрировать тикет в службе поддержки MS. Поэтому понять "что происходит" можете только по косвенным признакам. Маловероятно, что оно именно виснет. Скорее долго выполняется. Что по утилизации ЦП или сетевому трафику? Что происходит в СУБД в момент выполнения данной операции? По моему, есть лазейка в соглашении, которая позволяет обходить ограничение используя специализированный софт от MS, в данном случае VS 2022 (в ней появился встроенный десассемблер) - лучше вчитаться в актуальные формулировки и пообщаться с юристами. Последний раз редактировалось Товарищ ♂uatr; 18.06.2024 в 21:28. |
|
|
За это сообщение автора поблагодарили: MorpheusX (1), Lankey (1). |
19.06.2024, 10:59 | #4 |
Участник
|
Спасибо за помощь
В итоге заметила, что на стороне sql я вижу сессию с client_interface_ name = OLEBD и program_name = axDixfSsisZZZZZ с запросом , что ""висит" - постоянно в статусе исполнения (running). Он ничем не блокируется, но logical reads растет постоянно . Если обрываю export job в AX, то он продолжает крутиться на sql server. Неоптимальный очень какой-то план выполнения выбирается, видимо. Если тот же запрос запускаю чсто через sql, то та же проблема - висит тоже бесконечно. Убираю "order by AccountNum" в запросе (он там есть, тк AccountNum - key в entity), то за 10 минут выполняется. Переиндексировала таблицы запроса . План удалила. Перезапустила сервер бд, но план остался старым и проблема пока не ушла. На тестовом environnement вижу такую же проблему, но возникает при установке фильтров (а вот при полной выгружке данных все ок ) Видимо, надо как-то пробовать упрощать запрос в самой data entity Последний раз редактировалось Lankey; 19.06.2024 в 11:08. |
|