Problembeschreibung
Angenommen, Sie verwenden die DQS-Komponente (Data Quality Services) mit großem Batch in einem Microsoft SQL Server 2012 Integration Services (SSIS 2012) oder SQL Server 2014 Integration Services (SSIS 2014)-Paket. Wenn Sie versuchen, das Paket auszuführen, erhalten Sie möglicherweise die folgenden Ergebnisse:
-
Im SSIS-Paket wird die folgende Fehlermeldung angezeigt:
OnError,<MachineName>,<Benutzername>, Datenfluss Task – übergeben von Daten über DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<Datum><Uhrzeit>< Datum><Uhrzeit>, 0, 0x, der Wert "<StringValue>" in Spalte <ColumnName>"passt nicht in den aktuellen Puffer. Die Länge des Werts ist 11, aber die Länge der Ausgabespalte lautet 1. OnError,<MachineName>,<UserNname>, DQS_Test, {AF400590-A48A-4483-87A0-A5CC5AC8BF09}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2}, <Datum><Uhrzeit> <Datum><Uhrzeit>, 0, 0x, der Wert "<StringValue>" in Spalte <ColumnName>"passt nicht in den aktuellen Puffer. Die Länge des Werts ist 11, aber die Länge der Ausgabespalte lautet 1. OnError,<MachineName>,<Benutzername>, Datenfluss Task – übergeben von Daten über DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<Datum><Uhrzeit>,<Datum><Uhrzeit>, 0, 0x, ein unerwarteter Fehler in der DQS-Infrastruktur. Microsoft. SqlServer. DTS. Pipeline. DoesNotFitBufferException: der Wert ist zu groß, um in den Spaltendaten Bereich des Puffers zu passen. bei Microsoft. SqlServer. DTS. Pipeline. PipelineBuffer. SetString (Int32-ColumnIndex Zeichenfolgenwert) unter Microsoft. Ssdqs. Component. Common. Utilities. ComponentUtility. SetValue (IDTSComponentMetaData100 componentMetadata, PipelineBuffer-Puffer, Int32-fieldIndex, Datentyp, Int32-Länge, Zeichenfolgen-ColumnName, Object-Wert) unter Microsoft. Ssdqs. Component. datacorrection. Logic. DataCorrectionComponent. ProcessChunk (ReadOnlyCollection ' 1 fieldMappings, ReadOnlyCollection ' 1 Records, CorrectedRecordsStatusStatistics& correctedRecordsTotalStatusStatistics)
-
Wenn das Paket abgeschlossen ist, öffnen Sie das im DQS-Client generierte Projekt, und überprüfen Sie eine der Domänen. Wenn Sie die Domäne nach Wert sortieren, werden möglicherweise Werte aus anderen Domänen angezeigt.
Hinweis Die Fehlerrate dieses Problems hängt von der Batchgröße ab. Wenn die Größe des Batches größer ist, wird die Fehlerrate größer sein.
Fehlerbehebung
Das Problem wurde zuerst im folgenden kumulativen Update von SQL Server behoben.
Kumulatives Update 1 für SQL Server 2012 SP2 /en-us/help/2976982
Kumulatives Update 2 für SQL Server 2014 /en-us/help/2967546
Kumulatives Update 10 für SQL Server 2012 SP1 /en-us/help/2954099
Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und alle Sicherheitsupdates, die im vorherigen kumulativen Update enthalten waren. Schauen Sie sich die neuesten kumulativen Updates für SQL Server an:
Problemumgehung
Um dieses Problem zu umgehen, verringern Sie die Batchgröße, um das Problem zu beheben oder zu entlasten.
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.