KB2735763 – ПОПРАВКА: Изпълнението на пакет приключва неочаквано и състоянието е "Отменено", когато изпълнявате много SSIS пакети паралелно

Отнася се за
SQL Server 2012 Enterprise

Microsoft разпространява корекциите на Microsoft SQL Server 2012 като един файл за изтегляне. Тъй като корекциите са кумулативни, всяко ново издание съдържа всички актуални поправки и корекции на защитата, които са били включени в предишното издание на корекция на SQL Server 2012.

Симптоми

Да предположим, че използвате Агент на SQL Server, за да изпълнявате паралелно много пакети на услугите за интеграция на SQL Server 2012 (SSIS 2012). Освен това SSIS събитието е конфигурирано да се регистрира в таблиците на SSISDB или MSDB. В тази ситуация изпълнението на SSIS пакет приключва неочаквано и е в състояние "Отменено". Когато това се случи, не се регистрират съобщения за грешка. Например продължително изпълнение на SSIS пакет, което продължава от 2 до 3 часа, завършва неочаквано, има състояние "Отменен" и няма регистрирани съобщения за грешка.

Забележка

  • Очакваният резултат е, че изпълнението на пакета трябва да е успешно или да е неуспешно с някои грешки. Освен това състоянието "Отменено" трябва да се покаже само за изпълнение на пакети, които са изрично спрени.
  • Този проблем е по-вероятно да възникне, когато екземплярът на SQL Server Database Engine, в който се регистрират SSIS събитията, е в стресови условия. Стресиращите условия може да включват блокиране, бавна работа или забавяния, причинени от нарастването на базата данни на SSISDB.

Причина

Проблемът възниква, защото времето за регистриране на събитието изтича. Това води до преждевременна отмяна на изпълнението на SSIS пакета.

Когато SSIS събитие е конфигурирано за регистриране в таблиците на SSISDB или MSDB, командата Insert записва вътрешно събитието за регистриране и статистиката за производителността в тези таблици. Когато има много паралелни изпълнения на SSIS пакети, се изпълняват много паралелни команди на Insert. Следователно е по-вероятно да възникне грешка с изтичане на времето на изчакване и да причини проблема, който е описан в раздел "Симптоми".

Решение

След като приложите корекцията, времето за изчакване за командата "Вмъкване" се увеличава от 30 секунди на 120 секунди. Освен това, ако времето на изчакване настъпи след 120-секундно закъснение, изпълнението на SSIS пакета няма да бъде отменено. Вместо това неизпълнените събития за регистриране се прескачат, за да се избегне отказ на пакета.

Кумулативна информация за актуализацията

Сборен пакет за актуализация 3 за SQL Server 2012

Корекцията за този проблем е издадена за първи път в кумулативна актуализация 3. За допълнителна информация как да получите този сборен пакет за актуализация за SQL Server 2012, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:

2723749 Сборна актуализация 3 за SQL Server 2012Note Тъй като компилациите са кумулативни, всяко ново издание на корекции съдържа всички актуални поправки и корекции на защитата, които са били включени в предишното издание на корекция SQL Server 2012. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:

2692828 Компилациите на SQL Server 2012, които са издадени след издаването на SQL Server 2012

Състояние

Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.

Заобиколно решение

За разрешаване на този проблем използвайте един от следните методи:

  • Опитайте се да изпълнявате по-малко SSIS пакети или по-малко задачи паралелно.
  • Опитайте се да намалите параметъра "Ниво на регистриране", когато изпълнявате пакет от Management Studio или от задача на Агент на SQL Server. Например ако използвате детайлно регистриране, можете да зададете параметъра "Ниво на регистриране" на "Основни" или "Няма". Ако използвате настройките за записване в регистрационен файл от настройките на SSIS пакета в конструктора на данни на SQL Server Data Tools, можете да регистрирате събитията в текстов файл, а не в таблици от базата данни на SSISDB или MSDB.