Συμπτώματα
Ας υποθέσουμε ότι έχετε μια ομάδα διαθεσιμότητας Always On (AG) στα SQL Server 2016 και 2017. Όταν επεξεργάζεστε ένα ερώτημα ανάγνωσης σε μια δευτερεύουσα ρεπλίκα, οι επιδόσεις ενδέχεται να είναι πολύ πιο αργές από την κύρια ρεπλίκα, λόγω της συχνής αναμονής DIRTY_PAGE_TABLE_LOCK.
Αιτία
Αυτό το πρόβλημα παρουσιάζεται λόγω διαμάχης μεταξύ του ερωτήματος ανάγνωσης και του νήματος επανάληψης και επειδή ο πίνακας είναι κλειδωμένος.
Επίλυση
Αυτή η επιδιόρθωση περιλαμβάνεται στις ακόλουθες ενημερώσεις για SQL Server:
Συγκεντρωτική ενημέρωση 8 για SQL Server 2017
Συγκεντρωτική ενημέρωση 1 για SQL Server 2016 Service Pack 2
Συγκεντρωτική ενημέρωση 9 για SQL Server 2016 Service Pack 1
Πληροφορίες για τις εκδόσεις SQL Server
Κάθε νέα έκδοση για SQL Server περιέχει όλες τις άμεσες επιδιορθώσεις και τις επιδιορθώσεις ασφαλείας που υπήρχαν στην προηγούμενη δομή. Συνιστάται να εγκαταστήσετε την πιο πρόσφατη έκδοση για την έκδοση του SQL Server σας:
Λύση
Για να επιλύσετε αυτό το πρόβλημα, μπορείτε να χρησιμοποιήσετε ένα νήμα επανάληψης αντί για ένα παράλληλο νήμα επανάληψης, ενεργοποιώντας την Ανίχνευση σημαίας 3459.
Περισσότερες πληροφορίες
Όταν εκτελούνται ερωτήματα μόνο για ανάγνωση σε μια αναγνώσιμη δευτερεύουσα ρεπλίκα, τα νήματα ερωτημάτων επιχειρούν να εφαρμόσουν λειτουργίες ακύρωσης αναίρεσης καταγραφής σε εκκρεμότητα και πρέπει να συνεργαστούν με νήματα εργαζομένων επανάληψης με DIRTY_PAGE_TABLE_LOCK αναμονή, η οποία μπορεί να δημιουργηθεί συχνά και να επιβραδύνει τόσο την επανάληψη όσο και τις επιδόσεις του ερωτήματος, εάν υπάρχουν ταυτόχρονοι φόρτοι εργασίας επανάληψης. Το πρόβλημα επιδόσεων που σχετίζεται με DIRTY_PAGE_TABLE_LOCK αναμονή επιλύεται στην έκδοση συγκεντρωτικής ενημέρωσης για τα SQL Server 2016 SP και SQL Server 2017 που αναφέρονται σε αυτό το άρθρο.
Για περισσότερες πληροφορίες, μπορείτε να δείτε το παρακάτω ιστολόγιο σχετικά με το μοντέλο και τις επιδόσεις της δευτερεύουσας ρεπλίκας ρεπλίκας ομάδας διαθεσιμότητας.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για πρόβλημα στα προϊόντα της Microsoft που αναφέρονται στην ενότητα "Ισχύει για".
Αναφορές
Ενημερωθείτε σχετικά με την ορολογία που χρησιμοποιεί η Microsoft για την περιγραφή των ενημερώσεων λογισμικού.