Пакет служб SSIS случайно зависает во время выполнения - PullRequest
1 голос
/ 07 июня 2010

У меня постоянная и болезненная проблема с пакетом служб SSIS. Пакет запускается каждые 5 минут как задание агента SQL, а каждые 2-10 дней пакет запускается и никогда не останавливается (что препятствует дальнейшему выполнению). Если я остановлю зависшее задание вручную, оно снова начнет работать идеально через следующие 5 минут.

Пакет служб SSIS предназначен для перемещения данных из базы данных Oracle в базу данных MSSQL 2005. Имеет 7 ступеней:

  • Шаг 1 вызывает хранимую процедуру Oracle для подготовки временных таблиц внутри ORACLE
  • Шаги 2-6 обрабатывают данные из таблиц ORACLE в таблицы MSSQL ORACLE -> MSSQL
  • Шаг 7 вызывает хранимую процедуру Oracle для очистки временных таблиц ORACLE

Я подозреваю, что проблема вызвана ошибкой связи между сервером MSSQL и сервером ORACLE. База данных MSSQL и агент / пакет работают на одном компьютере, а база данных ORACLE работает по сети.

Я включил ведение журнала пакета SQL, и после более чем 2 ГБ файла журнала я зафиксировал момент, когда пакет перестал отвечать:


OnPreValidate,ADV-SRV5,NT AUTHORITY\SYSTEM,CallistaIntegrationToMonashCRM_delta,{F88F6C45-CFA2-4801-A2F2-DDF03D458A48},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,(null)
OnPreValidate,ADV-SRV5,NT AUTHORITY\SYSTEM,Address,{c5907799-f918-43da-818a-d4bd7f188367},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,(null)
OnInformation,ADV-SRV5,NT AUTHORITY\SYSTEM,Address,{c5907799-f918-43da-818a-d4bd7f188367},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,1074016266,0x,Validation phase is beginning.

OnProgress,ADV-SRV5,NT AUTHORITY\SYSTEM,Address,{c5907799-f918-43da-818a-d4bd7f188367},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,Validating
Diagnostic,ADV-SRV5,NT AUTHORITY\SYSTEM,Callista,{cb5d6fe3-3ea4-4453-8e5a-965818021df7},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,ExternalRequest_pre: The object is ready to make the following external request: 'IDataInitialize::GetDataSource'.
Diagnostic,ADV-SRV5,NT AUTHORITY\SYSTEM,Callista,{cb5d6fe3-3ea4-4453-8e5a-965818021df7},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,ExternalRequest_post: 'IDataInitialize::GetDataSource succeeded'. The external request has completed.
Diagnostic,ADV-SRV5,NT AUTHORITY\SYSTEM,Callista,{cb5d6fe3-3ea4-4453-8e5a-965818021df7},{3A1FB1E3-B76D-444D-876B-D1FBBB9BA246},6/06/2010 10:15:01 AM,6/06/2010 10:15:01 AM,0,0x,ExternalRequest_pre: The object is ready to make the following external request: 'IDBInitialize::Initialize'.

В этих сообщениях показан весь журнал, созданный для неудачного запуска, для успешного запуска обычно выводится ~ 2500 строк.

Я вижу, что пакет зависает во время операции инициализации соединения Callista (база данных ORACLE).

Мне не удалось найти способ либо исправить эту проблему, либо сделать так, чтобы пакет умер изящно (ошибка в журнале будет A-OK со мной).

Любая помощь или совет будет принята с благодарностью.

1 Ответ

0 голосов
/ 07 июня 2010

У нас была / есть такая проблема, когда pkg SSIS случайно зависает. Говорили о создании пакета, который отслеживает пакеты служб SSIS каждые 10-20 минут или около того, пока все пакеты в конкретном пакете не будут обработаны и не убьёт все зависшие пакеты pkgs и не уведомит разработчика по вызову в случае, если это произойдет. Вы можете подражать подобному подходу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...