1

У нас есть приложение Delphi, запущенное на терминальном сервере, которое продолжает генерировать файлы дампа. Для того же PID он создает файлы дампа с интервалом около 1 секунды, пока процесс не будет остановлен вручную. Еще одна странная вещь - это имя файла дампа:

±_minidump_default_pid_7916_tid_x6590_2012_6_18_13_48_40.dmp
÷_minidump_default_pid_7916_tid_x6590_2012_6_18_13_48_42.dmp
k_minidump_default_pid_7916_tid_x6590_2012_6_18_13_48_39.dmp
Ô_minidump_default_pid_7916_tid_x6590_2012_6_18_13_48_41.dmp
Ž_minidump_default_pid_7916_tid_x6590_2012_6_18_13_48_40.dmp

Файлы дампа не говорят нам много, и мы хотели бы получить предложение, где мы должны начать искать.

2 ответа2

2

Проблема заключалась в компоненте, который мы использовали для связи с Oracle. Новая версия этого компонента решила проблему.

Похоже, произошел следующий сценарий:

  • Произошло исключение;
  • Компонент пытается выполнить действие с Oracle;
  • Оракул вызвал мини-дамп;
  • Компонент повторен.

ОБНОВИТЬ:

Очевидно, эта проблема вызвана неисправным клиентом Oracle. Обновление до последней версии клиента Oracle исправило эту проблему для нас.

0

Когда я получил эти файлы, это было необработанное действие в программе (попытка сделать что-то без проверки возврата или думать, что это не сработает). Таким образом, в приложении .Net, которое я сделал, была необходима коррекция кода.

Эти файлы создаются из компонента Oracle из-за проблемы приложения.

Если вы просто хотите избежать создания этих файлов, просто измените файлы sqlnet.ora, добавив в них новые значения:

DIAG_ADR_ENABLED=OFF
DIAG_SIGHANDLER_ENABLED=FALSE
DIAG_DDE_ENABLED=FALSE

С этими новыми строками больше нет файлов дампа, и реальное приложение вылетает с подробностями в средстве просмотра событий.

Я надеюсь, что это поможет, знать, что это не всегда исходит от Oracle Part ;-)

Подсказка найдена здесь: https://stackoverflow.com/questions/28449276/what-is-the-reason-for-core-dump-stack-shows-from-oracle-lib

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .