Сбой пакета служб SSIS при выполнении «Период оценки служб Integration Services истек» - PullRequest
1 голос
/ 09 февраля 2009

У меня проблема с выполнением пакета через API в Microsoft.SqlServer.Dts.Runtime. У меня есть 4 сервера SQL, которые потенциально могут выполнить мой пакет в 2 кластерах. На пассивных узлах в каждом кластере сбой выполнения - сообщается об ошибке, что истек период оценки служб SSIS. На активных узлах работает нормально. Я не думаю, что это связано с кластером, тем более, что сама SSIS изначально не была установлена ​​на активных узлах. Мы установили его позже. В пятницу мы удалили и переустановили SSIS на пассивных узлах, убедившись, что мы используем правильный установочный носитель, но ничего не изменилось. Мы также попытались перезапустить и снова запустить с теми же результатами (не удалось на теперь активных узлах) Интересно, что я могу запустить пакет из SSMS, используя Утилиту выполнения пакета на проблемных узлах. Но вызов его из .net API не работает. Есть идеи? Я ничего не могу найти! Код для вызова API ниже ...

спасибо!

Ben

Package pck;

DTSExecResult execResult;

Application app = new Application();

//Load package from SQL Server

pck = app.LoadFromSqlServer(jobParams.SSISPackagePath, jobParams.ServerName, null, null, null);

//Assign values to the package variables

pck.Variables["FlatFileInputPath"].Value = destinationFilePath;




//Execute the package

logger.WriteInfo("Started executing SSIS package...");

execResult = pck.Execute(null, null, new SSISEventsSink(logger), null, null);

Ответы [ 3 ]

1 голос
/ 12 февраля 2009

Бинго; Служба SSIS сообщает, в какой редакции находится ключ реестра

.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90

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

Восстановление разрешений для конкретной учетной записи решило проблему.

1 голос
/ 09 февраля 2009

Проверьте, какую версию DTEXEC вы используете по умолчанию (start-run: cmd, dtexec). У меня была ошибка некоторое время назад, когда я установил ServicePacks на одном из серверов. Затем я установил несколько версий dtexec.exe. Один был по умолчанию при выполнении из cmd.exe, а другой по умолчанию при запуске из API. Сколько разных файлов "dtexec.exe" вы находите при поиске на серверах?

0 голосов
/ 11 февраля 2009

Это нормально работает, если я запускаю процесс от имени локального администратора!

Таким образом, я не получаю "срок оценки истек", если я работаю как локальный администратор - странно.

...