Συμπτώματα
Όταν εκτελείτε τις λειτουργίες DDL, όπως η δημιουργία ευρετηρίου ή η περικοπή πίνακα στον SQL Server 2016, οι λειτουργίες ενδέχεται να αποκλειστούν εάν υπάρχει άλλη συναλλαγή DDL που εκτελείται στην ίδια βάση δεδομένων.
Επίλυση
Το πρόβλημα διορθώθηκε για πρώτη φορά με την ακόλουθη αθροιστική ενημέρωση του SQL Server:
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Συνιστούμε να κάνετε λήψη και εγκατάσταση των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Περισσότερες πληροφορίες
Όταν μια γλώσσα DDL δημιουργεί ή διαγράφει έναν πίνακα ή ένα ευρετήριο, πρέπει να εισαγάγει ή να διαγράψει το αναγνωριστικό συνόλου γραμμών του πίνακα ή του ευρετηρίου από το sysrowsets, για το οποίο πρέπει να κρατήσει πατημένο το κλείδωμα επιπέδου γραμμής X στην καταχώρηση. Όταν αυτό γίνει μέσα σε μια συναλλαγή, το X Lock θα κρατηθεί για όλη τη διάρκεια της συναλλαγής. Όταν η δυνατότητα "μετακινούμενου πλειάδα" ανακαλύπτει τα buffer διαγραφής που πρέπει να επαναλάβει το sysrowsets για να ανακαλύψει τους υπάρχοντες πίνακες ή ευρετήρια. Για να διαβάσετε κάθε γραμμή από το sysrowsets πρέπει να διατηρεί ένα κλείδωμα επιπέδου γραμμής στην καταχώρηση που διαβάζει τη συγκεκριμένη στιγμή. Η διαδικασία εντοπισμού διακόπτεται όταν το πρόγραμμα μετακίνησης πλειάδας εντοπίζει το πρώτο σύνολο γραμμών στο οποίο μπορεί να εργαστεί. Σε αυτό το στάδιο, η δυνατότητα "Μετακίνηση πλειάδας" θα κάνει την πραγματική εργασία για την εκκαθάριση του buffer διαγραφής, αλλά για να βεβαιωθεί ότι το σύνολο γραμμών που ανακαλύφθηκε εξακολουθεί να είναι έγκυρο θα περιέχει ένα κλείδωμα SCH-S σε όλα τα γραμμών που αξιολόγησε κατά τη διαδικασία εντοπισμού μέχρι να ολοκληρωθεί η εργασία του.Το Sysrowsets είναι ταξινομημένο με το αναγνωριστικό συνόλου γραμμών, επομένως μπορεί να συμβεί ότι ο μετακινούμενος πλειάδας ανίχνευσε πολλαπλά υπάρχοντα γραμμών στα οποία δεν έχει καμία ενέργεια να κάνει, αλλά θα εξακολουθεί να διατηρεί το κλείδωμα SCH-S και φθάνει σε μια καταχώρηση στο Sysrowsets για την οποία δεν μπορεί να αποκτήσει το κλείδωμα επιπέδου γραμμής, επειδή αυτή τη στιγμή μεταβάλλεται από μια μεγάλη συναλλαγή που κρατάει ένα X Σε αυτό το στάδιο, το DDLs που περιλαμβάνει την αλλαγή του αναγνωριστικού συνόλου γραμμών αποκλειστεί πίσω από τα κλειδώματα SCH-S του μετακινούμενου πλειάδας.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "ισχύει για".
Αναφορές
Μάθετε περισσότερα σχετικά με την ορολογία που χρησιμοποιεί η Microsoft για την περιγραφή ενημερώσεων λογισμικού.