Συμπτώματα
Εξετάστε το ακόλουθο σενάριο:
- Ας υποθέσουμε ότι έχετε διαμερισμένους πίνακες στο Microsoft SQL Server και αποτελούν μέρος της αλλαγής δεδομένων Μεταγραφή (CDC) ή της αναπαραγωγής συναλλαγών. Κάνετε εναλλαγή ή κατάργηση διαμερισμάτων από αυτούς τους πίνακες.
- Μετά το διακόπτη διαμερισμάτων κατά την εκτέλεση λειτουργιών γλώσσας χειρισμού δεδομένων (DML), ενδέχεται να παρατηρήσετε ότι παρουσιάζεται μια EXCEPTION_ACCESS_VIOLATION και δημιουργείται ένα αρχείο ένδειξης σφαλμάτων μνήμης.
Σημείωση
Ημερομηνία/Ώρα ***Ένδειξη στοίβας που αποστέλλεται στο FilePath\FileName
Ημερομηνία/Ώρα SqlDumpExceptionHandler: Η διεργασία ProcessID δημιούργησε ανεπανόρθωτη εξαίρεση c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server τερματίζει αυτήν τη διαδικασία.
Ημερομηνία/Ώρα * *******************************************************************************
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα * BEGIN STACK DUMP:
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα * Διεύθυνση εξαίρεσης = 000007FEE724BD80 Module(sqllang+00000000015BBD80)
Ημερομηνία/Ώρα * Κωδικός εξαίρεσης = c0000005 EXCEPTION_ACCESS_VIOLATION
Ημερομηνία/Ώρα * Παρουσιάστηκε παραβίαση πρόσβασης κατά την ανάγνωση της διεύθυνσης 000000000000002A
Ημερομηνία/Ώρα * Buffer εισόδου 70 byte
Ημερομηνία/Ώρα * sys.sp_MScdc_capture_job
Ημερομηνία/Ώρα *
Σημείωση
Ημερομηνία/Ώρα ***Ένδειξη στοίβας που αποστέλλεται στο FilePath\FileName
Ημερομηνία/Ώρα SqlDumpExceptionHandler: Η διεργασία PID δημιούργησε ανεπανόρθωτη εξαίρεση c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server τερματίζει αυτήν τη διαδικασία.
Ημερομηνία/Ώρα * *******************************************************************************
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα * BEGIN STACK DUMP:
Ημερομηνία/Ώρα * Ημερομηνία/ΏραSPID
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα *
Ημερομηνία/Ώρα * Διεύθυνση εξαίρεσης = 000007FEE9D26640 Module(sqllang+0000000001586640)
Ημερομηνία/Ώρα * Κωδικός εξαίρεσης = c0000005 EXCEPTION_ACCESS_VIOLATION
Ημερομηνία/Ώρα * Παρουσιάστηκε παραβίαση πρόσβασης κατά την ανάγνωση της διεύθυνσης 000000000000002A
Ημερομηνία/Ώρα * Buffer εισόδου 109 byte -
Ημερομηνία/Ώρα * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00 00
Ημερομηνία/Ώρα * s p _ r e p 01 00 00 00 0b 00 73 00 70 00 5f 00 72 00 65 00 70 00
Ημερομηνία/Ώρα * l c m d s & ô 6c 00 63 00 6d 00 64 00 73 00 00 00 00 00 26 04 04 f4
Ημερομηνία/Ώρα * & & ÿ 01 00 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 ff
Ημερομηνία/Ώρα * ÿÿÿ ¥ & ff ff 00 00 a5 0a 00 00 00 00 00 26 04 04 8f 13 00
Ημερομηνία/Ώρα * & & ¡ 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 20 a1 07
Ημερομηνία/Ώρα * 00
- Εάν εκτελέσετε το παρακάτω ερώτημα σε σχέση με τον πίνακα προορισμού, ίσως παρατηρήσετε ότι η τιμή της is_replicated στήλης θα επισημαίνεται ως '1' για μη ομαδοποιημένο ευρετήριο, το οποίο δεν είναι σωστό.
select index_id, partition_number,* from sys.system_internals_partition_columns pc with(nolock)
JOIN sys.partitions p with(nolock)
ON p.partition_id = pc.partition_id
where p.object_id = object_id ('PartitionTable')
order by 2
Επίλυση
Αυτό το πρόβλημα διορθώνεται στις ακόλουθες αθροιστικές ενημερώσεις για SQL Server:
Αθροιστική ενημερωμένη έκδοση 1 για SQL Server 2017
Αθροιστική ενημερωμένη έκδοση 5 για SQL Server 2016 SP1
Αθροιστική ενημερωμένη έκδοση 8 για SQL Server 2014 SP2
Πληροφορίες σχετικά με τις συγκεντρωτικές ενημερώσεις για SQL Server:
Κάθε νέα αθροιστική ενημερωμένη έκδοση για SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που συμπεριλήφθηκαν με την προηγούμενη αθροιστική ενημερωμένη έκδοση. Δείτε τις πιο πρόσφατες αθροιστικές ενημερώσεις για SQL Server:
Τελευταία αθροιστική ενημέρωση για το SQL Server 2017
Τελευταία αθροιστική ενημέρωση για το SQL Server 2016
Τελευταία αθροιστική ενημερωμένη έκδοση για το SQL Server 2014
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα που αφορά τα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Παραπομπές
Ενημερωθείτε για την ορολογία που χρησιμοποιεί η Microsoft για να περιγράφει τις ενημερώσεις λογισμικού.