Symptomy
Załóżmy, że korzystasz z składnika do czyszczenia usług Data Quality Services (DQS) z dużą partią w pakiecie Microsoft SQL Server 2012 Integration Services (SSIS 2012) lub SQL Server 2014 Integration Services (SSIS 2014). Podczas próby wykonania pakietu mogą zostać wyświetlone następujące wyniki:
-
W pakiecie SSIS jest wyświetlany następujący komunikat o błędzie
OnError,<nazwakomputera>,<nazwa użytkownika>, zadanie przepływu danych — przekazanie danych za pośrednictwem usług DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<date><time>,<Data><godzina >, 0, 0x, wartość "<StringValue>" w kolumnie <ColumnName>"nie pasuje do bieżącego buforu. Długość wynosi 11, ale długość kolumny wyjściowej to 1. OnError,<nazwakomputera>,<UserNname>, DQS_Test, {AF400590-A48A-4483-87A0-A5CC5AC8BF09}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2}, <Date><> <,><Data> godzina<, 0, 0x, wartość ">StringValue<" w kolumnie >ColumnName "nie pasuje do bieżącego buforu. Długość wynosi 11, ale długość kolumny wyjściowej to 1. OnError,<nazwakomputera>,<nazwa użytkownika>, zadanie przepływu danych — przekazanie danych za pośrednictwem usług DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<date><Time>,<Date ><>, 0, 0x, wystąpił nieoczekiwany błąd w infrastrukturze usług DQS. Microsoft. SqlServer. Dts. Pipeline. DoesNotFitBufferException: wartość jest zbyt duża, aby zmieściła się w obszarze danych kolumny w buforze. w witrynie Microsoft. SqlServer. Dts. Pipeline. PipelineBuffer. SetString (Int32 columnIndex, wartość ciągu) w witrynie Microsoft. Ssdqs. Component. Common. Utilities. ComponentUtility. SetValue (IDTSComponentMetaData100 componentMetadata, PipelineBuffer buffer, Int32 fieldIndex, typ DataType, długość Int32, String ColumnName, wartość obiektu) w witrynie Microsoft. Ssdqs. Component. datacorrecting. Logic. DataCorrectionComponent. ProcessChunk (ReadOnlyCollection ' 1 FieldMappings&
-
Po ukończeniu pakietu Otwórz projekt wygenerowany w kliencie usług DQS i sprawdź w jednej z domen. Jeśli sortujesz domenę według wartości, mogą być wyświetlane wartości z innych domen.
Uwaga Częstość błędów tego problemu zależy od rozmiaru wsadu. Gdy rozmiar wsadu jest większy, wskaźnik błędu będzie większy.
Rozwiązanie
Ten problem został po raz pierwszy rozwiązany w poniższej zbiorczej aktualizacji programu SQL Server.
Zbiorcza aktualizacja 1 dla programu SQL Server 2012 z dodatkiem SP2 /en-us/help/2976982
Zbiorcza aktualizacja 2 dla programu SQL Server 2014 /en-us/help/2967546
Zbiorcza aktualizacja 10 dla programu SQL Server 2012 z dodatkiem SP1 /en-us/help/2954099
Każda nowa Zbiorcza aktualizacja programu SQL Server zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń uwzględnione w poprzedniej aktualizacji zbiorczej. Zapoznaj się z najnowszymi aktualizacjami zbiorczymi dla programu SQL Server:
Obejście
Aby obejść ten problem, zmniejsz rozmiar wsadu w celu rozwiązania problemu lub odciążenia go.
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji "dotyczy".