Συμπτώματα
Εξετάστε το ακόλουθο σενάριο:
-
Χρησιμοποιείτε Microsoft SQL Server 2016 Service Pack 2 (SP2) Αθροιστική ενημέρωση 2 (CU2) ή νεότερες εκδόσεις.
-
Εκτελείτε μια παρουσία που φιλοξενεί πολλές βάσεις δεδομένων (συνήθως περισσότερες από 200) και η παρουσία είναι μέρος μιας ομάδας διαθεσιμότητας Always On (AG) (συνήθως με το ρόλο του δευτερεύοντα διακομιστή). Σημείωση Όλες οι βάσεις δεδομένων χρηστών δεν χρειάζεται να ανήκουν σε AGs.
-
Εκτελείτε μια εφαρμογή υπηρεσιών σκιώδους αντιγράφου τόμου (VSS) για να ζητήσετε ένα αντίγραφο ασφαλείας όλων ή ορισμένων βάσεων δεδομένων της παρουσίας SQL Server.
Σε αυτό το σενάριο, η SQL Writer Service μπορεί να φτάσει σε αδιέξοδο και να διατηρήσει επ ' αόριστον κλειδώσεις ενάντια σε έναν εσωτερικό πίνακα συστήματος στο master (sys.sysdbreg με object_id 28). Επιπλέον, αυτά τα κλείδωμα με τη σειρά τους αποτρέπουν την ανάγνωση από προβολές δυναμικής διαχείρισης (DMV) του συστήματος όπως το sys.dm_hadr_database_replica_states και μπορεί να οδηγήσουν σε κύριο δευτερεύον αποκλεισμό στην παρουσία. Επιπλέον, θα παρατηρήσετε ότι η ανάλυση της αλυσίδας μπλοκ επιστρέφει την ακόλουθη πρόταση που προέρχεται από το SQL Server VSS Writer ως αναστολέα κεφαλής:
"select name, recovery_model_desc, state_desc, CONVERT(ακέραιος, is_in_standby), ISNULL(source_database_id,0) από master.sys.databases"
Στη συνέχεια, SQL Server κατάσταση αναμονής ASYNC_NETWORK_IO.
Σημείωση Επειδή η ASYNC_NETWORK_IO αναμονή εφαρμόζεται, η wait_time εναντίον της δεν θα υπερβεί ποτέ τα δύο δευτερόλεπτα (2.000 ms). Ωστόσο, ο τύπος αναμονής θα παραμείνει σε ισχύ επ' αόριστον και αυτή η κατάσταση δεν θα καταργήσει ποτέ από μόνη της. Απαιτεί να σκοτώσεις τον SQL Writer Service για να ξεμπλοκάρεις την κατάσταση.
Μεταξύ του SPID που παρεμποδίζεται από αυτόν τον αποκλεισμό κεφαλής, συχνά θα υπάρχει ένα DBSTARTUP SPID (alwayson Secondary DB redo).
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για πρόβλημα στα προϊόντα της Microsoft που αναφέρονται στην ενότητα "Ισχύει για".
Επίλυση
Αυτό το πρόβλημα έχει διορθωθεί στις ακόλουθες αθροιστικές ενημερώσεις για SQL Server:
Πληροφορίες για τις συγκεντρωτικές ενημερώσεις για SQL Server:
Κάθε νέα συγκεντρωτική ενημέρωση για SQL Server περιέχει όλες τις άμεσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που περιλαμβάνονταν στην προηγούμενη συγκεντρωτική ενημέρωση. Δείτε τις πιο πρόσφατες συγκεντρωτικές ενημερώσεις για SQL Server:
Αναφορές
Ενημερωθείτε σχετικά με την ορολογία που χρησιμοποιεί η Microsoft για την περιγραφή ενημερώσεων λογισμικού.