Συμπτώματα
Ας υποθέσουμε ότι έχετε καθορισμένα αντικείμενα ακολουθίας στον Microsoft SQL Server 2012 ή στον SQL Server 2014. Κατά την εκτέλεση sp_sequence_get_range αποθηκευμένων διαδικασιών συστήματος και της επόμενης τιμής για συνάρτηση παράλληλα με το ίδιο αντικείμενο ακολουθίας (για παράδειγμα, σε διαφορετικές ταυτόχρονες συνδέσεις ή σε εφαρμογές πολλαπλών νημάτων), δημιουργείται διπλότυπη τιμή ακολουθίας.
Αιτία
Αυτό το πρόβλημα παρουσιάζεται εξαιτίας μιας κατάστασης κούρσας για sp_sequence_get_range τις αποθηκευμένες διαδικασίες συστήματος και την επόμενη τιμή για τη συνάρτηση, όταν εκτελούνται με το ίδιο αντικείμενο ακολουθίας παράλληλα. Και τα δύο διαβάζουν και γράφουν στην τρέχουσα τιμή της γεννήτριας ακολουθίας. Ωστόσο, υπάρχει έλλειψη σωστού μηχανισμού συγχρονισμού μεταξύ τους.
Επίλυση
Πληροφορίες για το Service Pack
Για να επιλύσετε αυτό το ζήτημα, αποκτήστε το Service Pack 1 για τον SQL Server 2014.
Για περισσότερες πληροφορίες σχετικά με τον SQL Server 2014 Service Pack 1 (SP1), ανατρέξτε στο θέμα σφάλματα που επιδιορθώνονται στον SQL server 2014 Service Pack 1. Αυτό το πρόβλημα διορθώθηκε για πρώτη φορά με την ακόλουθη αθροιστική ενημέρωση του SQL Server.
Αθροιστική ενημερωμένη έκδοση 6 για τον SQL Server 2014 /en-us/help/3031047
Αθροιστική ενημερωμένη έκδοση 4 για τον SQL Server 2012 SP2 /en-us/help/3007556
Κάθε νέα αθροιστική ενημέρωση για τον SQL Server περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις επιδιορθώσεις ασφαλείας που συμπεριλήφθηκαν στην προηγούμενη αθροιστική ενημέρωση. Ανάληψη ελέγχου των πιο πρόσφατων αθροιστικών ενημερώσεων για τον SQL Server:
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα πρόβλημα στα προϊόντα της Microsoft που παρατίθενται στην ενότητα "ισχύει για".