Цитата:
Сообщение от
mazzy
Вот и у меня возникло подобное Object Server 01: RPC error: RPC exception 1726 occurred in session 3
только AOS не валится, а закрывает клиентскую сессию. и не переодически а в одном и том же месте - на закрытии книги продаж. есть соображения что с этим можно сделать?
Совсем недавно
fed напоминал о серии статей, посвященных анализу дампов AOS'а AX 2009 x64. Я бы попробовал подключиться к выделенному для экспериментов AOS'у отладчиком, словить отладчиком это исключение и при остановленном AOS'е либо прямо в памяти посмотреть, где именно в коде Х++ валится сессия, либо дамп сделать (хотя нафиг дамп, если есть "живой" AOS). Мне лично недавно очень помогла статья
Finding the X++ call stack that caused a crash: нужно было найти, из-за чего клиент подвисал на отправке почты через штатную cdosys.dll, и удалось локализовать место внутри этой библиотеки, где все зависало. Надо только учесть, что у Tariq'а в статье есть пара опечаток, которые становятся очевидны при просмотре приведенного им выхлопа отладчика:
Цитата:
Look for the Ax32Serv!interpret::evalFunc frames take the location from the line below and then run in AX2009 64 bit: dw 000000002311b150+30
на самом деле +20
Цитата:
Next you can run in AX2009 64 bit: db 000000002311b150+38
на самом деле +28
Для аналогичного анализа дампа памяти или "живого" клиента AX 2009 подходят приведенные им рецепты для AX4 32-bit (ну и плюс в этом случае надо использовать WinDBG x86 - даже на винде x64). Разумеется, также можно воспользоваться приведенными им скриптами для выуживания стека вызовов X++. Да, и лучше это все делать на ядре RU7, потому что для него отладочные символы в открытом доступе есть, а для RU6, насколько я могу судить, - нет.
PS. Также
хочу напомнить, что с ключом ком. строки /console AOS можно запустить не как сервис, а как обычное консольное приложение - в т.ч. прямо из-под отладчика.