Ошибка выполнения в задаче скрипта

У нас есть полностью работающий сервер базы данных, скажем, serverA, данные которого обновляются ежедневно. Мы хотим продублировать эту базу данных на другом сервере, говорит serverB, чтобы у нас была тестовая среда. Базы данных восстановлены на serverB.

Как и на сервере А, мы хотим, чтобы данные сервера Б также обновлялись ежедневно, поэтому можно сказать, что тесты, которые мы проводим на сервере Б, полностью точны, поскольку они будут иметь те же данные, что и сервер А. Мы развернули пакеты SSIS, используемые на сервере A, на сервере B, а также скопировали задания агента SQL Server на сервере B.

Я пытаюсь изменить эти задания и пакеты, чтобы они могли без проблем работать на сервере B, я меняю пути к каталогам, имена серверов и т. д.

Теперь есть эта работа, которая всегда завершается сбоем из-за пакета zip.dtsx. zip.dtsx извлекает файлы из каталога A, сжимает их и сохраняет сжатый файл в каталоге B, а затем удаляет файл в каталоге A. Однако я не могу понять, почему возникает ошибка выполнения.

zip.dtsx имеет задачу сценария с именем Zip files.

Язык сценария: Microsoft Visual C# 2010.

Набор ReadOnlyVariables: User::DestinationPath, User::NamePart, User::SourcePath,$Package::filename

Сценарий,

public void Main()
        {
            String sourcePath = Convert.ToString(Dts.Variables["SourcePath"].Value);
            String namePart = Convert.ToString(Dts.Variables["NamePart"].Value);
            String destinationPath = Convert.ToString(Dts.Variables["DestinationPath"].Value);
            FileStream sourceFile = File.OpenRead(@sourcePath + namePart);
            FileStream destFile = File.Create(@destinationPath + namePart);

            GZipStream compStream = new GZipStream(destFile, CompressionMode.Compress);

            try
            {
                int theByte = sourceFile.ReadByte();
                while (theByte != -1)
                {
                    compStream.WriteByte((byte)theByte);
                    theByte = sourceFile.ReadByte();
                }
            }
            finally
            {
                compStream.Dispose();
                sourceFile.Close();
                destFile.Close();
                File.Delete(@sourcePath + namePart);
            } 

            Dts.TaskResult = (int)ScriptResults.Success;
        }

Ошибка, которую я получаю при выполнении задачи в Microsoft Visual Studio -> Щелкните правой кнопкой мыши объект задачи сценария -> Выполнить задачу введите здесь описание изображения

Я не знаком с Microsoft Visual C# и только что начал использовать пакеты SSIS, поэтому я действительно в растерянности.

ОБНОВЛЕНИЕ: я попытался закомментировать разные строки в скрипте C#. Наконец, когда я закомментировал File.Delete(@sourcePath + namePart);, задание, вызывающее zip.dtsx, завершилось успешно. Однако я не уверен, почему у меня возникает ошибка с этой строкой. Я не уверен, что это из-за разрешений или чего-то еще.


person Krish    schedule 14.10.2016    source источник
comment
Можете ли вы проверить, что сам вызов задачи сценария не работает или не вызывает GZipStream?   -  person Kannan Kandasamy    schedule 14.10.2016
comment
Вы добавили с помощью System.IO; используя System.IO.Compression?   -  person Kannan Kandasamy    schedule 14.10.2016
comment
Привет @Kannan Kandasamy, да, это в верхней части сценария. #region Namespaces using System; using System.Data; using Microsoft.SqlServer.Dts.Runtime; using System.Windows.Forms; using System.IO; using System.IO.Compression; #endregion   -  person Krish    schedule 14.10.2016
comment
Как я могу проверить, не работает ли он при вызове GZipStream?   -  person Krish    schedule 14.10.2016
comment
Вы можете попробовать прокомментировать код GZip и проверить, нормально ли работает простая задача сценария?   -  person Kannan Kandasamy    schedule 14.10.2016
comment
Я прокомментировал GZipStream и все еще сталкиваюсь с ошибкой времени выполнения. Также я видел это ссылка. Я уже удалил и повторно добавил ссылки, но все равно возникает та же ошибка времени выполнения.   -  person Krish    schedule 14.10.2016
comment
Давайте продолжим обсуждение в чате.   -  person Kannan Kandasamy    schedule 14.10.2016
comment
Ответ на этот вопрос был дан в моем другом сообщении.   -  person Krish    schedule 18.10.2016