Συμπτώματα
Ας υποθέσουμε ότι χρησιμοποιείτε το στοιχείο καθαρισμού υπηρεσιών ποιότητας δεδομένων (DQS) με μεγάλη δέσμη σε ένα πακέτο υπηρεσιών ενοποίησης του Microsoft SQL Server 2012 (SSIS 2012) ή του SQL Server 2014 Services Integration Services (SSIS 2014). Όταν προσπαθείτε να εκτελέσετε το πακέτο, ενδέχεται να λάβετε τα παρακάτω αποτελέσματα:
-
Λαμβάνετε το ακόλουθο μήνυμα σφάλματος εντός του πακέτου SSIS
OnError,<MachineName>,<όνομα χρήστη>, δεδομένα ροής ΕΡΓΑΣΊΑς ροής δεδομένων μέσω DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<ημερομηνία><ώρα >,<ημερομηνία><ώρα >, 0, 0x, η τιμή '<StringValue>' στη στήλη <ColumnName>' δεν χωράει στο τρέχον buffer. Το μήκος της τιμής είναι 11, αλλά το μήκος της στήλης εξόδου είναι 1. OnError,<MachineName>,<UserNname>, DQS_Test, {AF400590-A48A-4483-87A0-A5CC5AC8BF09}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2}, <ημερομηνία><ώρα>, <ημερομηνία><ώρα>, 0, 0x, η τιμή '<StringValue>' στη στήλη <ColumnName>' δεν χωράει στο τρέχον buffer. Το μήκος της τιμής είναι 11, αλλά το μήκος της στήλης εξόδου είναι 1. OnError,<MachineName>,<όνομα χρήστη>, δεδομένα ροής ΕΡΓΑΣΊΑς ροής δεδομένων μέσω DQS, {9C749B1D-3FAF-4E3B-B0B9-C8BA626428F5}, {B8582806-2FDB-43EF-8E69-B43E6A375DD2},<ημερομηνία><ώρα >,<ημερομηνία><ώρα >, 0, 0x, Παρουσιάστηκε μη αναμενόμενο σφάλμα στην υποδομή DQS. Microsoft. SqlServer. DTS. αγωγών. DoesNotFitBufferException: η τιμή είναι πολύ μεγάλη για να χωρέσει στην περιοχή δεδομένων στήλης του buffer. στο Microsoft. SqlServer. DTS. διοχέτευση. PipelineBuffer. SetString (Int32 columnIndex, τιμή συμβολοσειράς) στο Microsoft. Ssdqs. Component. Common. Utilities. ComponentUtility. Ορισμός τιμής (IDTSComponentMetaData100 componentMetadata, PipelineBuffer buffer, Int32 fieldIndex, τύπος τύπου τύπου, Int32 μήκος, συμβολοσειρά columnName, τιμή αντικειμένου) στη Microsoft. Ssdqs. Component. DataCorrection. Logic. DataCorrectionComponent. ProcessChunk (ReadOnlyCollection ' 1 fieldMappings, ReadOnlyCollection ' 1 Records, CorrectedRecordsStatusStatistics& correctedRecordsTotalStatusStatistics
-
Όταν ολοκληρωθεί το πακέτο, ανοίξτε το έργο που δημιουργήθηκε στο πρόγραμμα-πελάτη DQS και εξετάστε έναν από τους τομείς. Εάν ταξινομήσετε τον τομέα κατά τιμή, ενδέχεται να δείτε τιμές από άλλους τομείς.
Σημείωση Ο ρυθμός αποτυχίας αυτού του ζητήματος εξαρτάται από το μέγεθος της δέσμης. Όταν το μέγεθος της δέσμης είναι μεγαλύτερο, ο ρυθμός αποτυχίας θα είναι μεγαλύτερος.
Επίλυση
Το πρόβλημα διορθώθηκε για πρώτη φορά με την ακόλουθη αθροιστική ενημέρωση του SQL Server.
Αθροιστική ενημερωμένη έκδοση 1 για τον SQL Server 2012 SP2 /en-us/help/2976982
Αθροιστική ενημερωμένη έκδοση 2 για τον SQL Server 2014 /en-us/help/2967546
Αθροιστική ενημερωμένη έκδοση 10 για τον SQL Server 2012 SP1 /en-us/help/2954099
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Ανάληψη ελέγχου των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Λύση
Για να αντιμετωπίσετε αυτό το πρόβλημα, μειώστε το μέγεθος της δέσμης για να επιλύσετε ή να ανακουφίσετε το πρόβλημα.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "ισχύει για".