ΕΠΙΔΙΌΡΘΩΣΗ: Μήνυμα λάθους κατά την εκτέλεση υπηρεσιών αναφοράς του SQL Server 2008 ή το μηχανισμό βάσης δεδομένων του SQL Server 2008: "Ανεπανόρθωτο σφάλμα μηχανής εκτέλεσης (000006427F44AE16)" ή "Παρουσιάστηκε ανεπανόρθωτο σφάλμα στο του κοινού χρόνου εκτέλεσης γλώσσας .NET Framework"

Ισχύει για: SQL Server 2008 StandardSQL Server 2008 EnterpriseSQL Server 2008 Developer

Η Microsoft διανέμει ενημερώσεις κώδικα του Microsoft SQL Server 2008 μορφή ενός αρχείου λήψης. Επειδή οι ενημερώσεις κώδικα είναι αθροιστικές, κάθε νέα έκδοση περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 έκδοση της ενημέρωσης κώδικα.

Συμπτώματα


Ενώ το Microsoft SQL Server 2008 Reporting Services (SSRS 2008) απόδοση μεγάλες αναφορές ή μεγάλα μοντέλα, λαμβάνετε το ακόλουθο μήνυμα λάθους χρόνου εκτέλεσης:
Προέλευσης: Στοιχείο χρόνου εκτέλεσης .NET

Ημ/νία:
Το Αναγνωριστικό συμβάντος: 1023
Κατηγορία εργασίας: καμία
Επίπεδο: σφάλμα
Λέξεις-κλειδιά: κλασικό
Χρήστης: δ/υ
Υπολογιστή:
Περιγραφή:
Στοιχείο χρόνου εκτέλεσης .NET έκδοση 2.0.50727.3603 - ανεπανόρθωτο σφάλμα μηχανής εκτέλεσης (000006427F44AE16) (80131506)

Επίσης ενδέχεται να καταγραφεί το ακόλουθο μήνυμα λάθους στο αρχείο καταγραφής του SSRS 2008:
rshost! rshost! 18f0! < ημερομηνία ώρα >:: e σφάλμα: δημιουργία μιας ένδειξης και έξοδος από τη διεργασία λόγω σφάλματος χρόνου εκτέλεσης ανεπανόρθωτο.

Αυτό το ζήτημα ενδέχεται επίσης να παρουσιαστεί στο μηχανισμό βάσης δεδομένων του SQL Server 2008, όταν εκτελείται το SQL Server 2008 αντικείμενο κοινή γλώσσα χρόνου εκτέλεσης (CLR). Σε αυτήν την περίπτωση, ενδέχεται να λάβετε το ακόλουθο μήνυμα λάθους:
< Ώρα > σφάλμα διακομιστή: 6536, σοβαρότητα: 16, κατάσταση: 1.
Παρουσιάστηκε ανεπανόρθωτο σφάλμα διακομιστή A < ώρα > σε του κοινού χρόνου εκτέλεσης γλώσσας .NET Framework. Τερματίζεται η λειτουργία του SQL Server. Εάν το σφάλμα εμφανιστεί πάλι, μετά την επανεκκίνηση του διακομιστή, επικοινωνήστε με τις υπηρεσίες υποστήριξης πελατών.

Το αρχείο καταγραφής σφαλμάτων του SQL ενδέχεται να εμφανίζει την ένδειξη ως μια ένδειξη της στοίβας με το ακόλουθο κείμενο:

<time> Server * *******************************************************************************<time> Server *
<time> Server * BEGIN STACK DUMP:
<time> Server * 03/24/11 19:05:12 spid 0
<time> Server *
<time> Server * A fatal error occurred in .NET Framework runtime.

<time> Server * *******************************************************************************
<time> Server *
<time> Server * BEGIN STACK DUMP:
<time> Server * 03/24/11 19:05:23 spid 0
<time> Server *
<time> Server * Full CLR state dump: A fatal error occurred in .NET Framework runtime.

Αιτία


Αυτό το ζήτημα παρουσιάζεται όταν μια συγκρότηση μεικτό χρησιμοποιεί το API του Win32 CreateThread ή BeginThread Win32 API για να δημιουργήσει ένα νήμα. Αργότερα, το νήμα προσπαθεί να Μετάβαση σε διαχειριζόμενο κώδικα. Μετάβαση αυτή προκαλεί CLR για να ζητήσετε ένα περιβάλλον εργασίας από τον κεντρικό υπολογιστή κατά το χρόνο εκτέλεσης. Κατά τη μετάβαση αυτή δεν επιτρέπεται ρητά, παρουσιάζεται ένα σφάλμα χρόνου εκτέλεσης.



Σημείωση Η μετάβαση ρητά δεν επιτρέπεται επειδή κάθε χρονοδιαγράμματος cache απαιτεί ότι τα νήματα είναι σε κατάσταση μη preemptive, πριν να προσπαθήσει να αποκτήσει πρόσβαση σε μνήμη cache.

Προτεινόμενη αντιμετώπιση



Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα στην αθροιστική ενημερωμένη έκδοση 7 για SQL Server 2008 Service Pack 1. Για περισσότερες πληροφορίες σχετικά με αυτό το πακέτο αθροιστική ενημερωμένη έκδοση, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
979065 συγκεντρωτική ενημερωμένη έκδοση πακέτου 7 για SQL Server 2008 Service Pack 1
Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 έκδοση της ενημέρωσης κώδικα. Συνιστούμε ότι μπορείτε να εξετάσουν την εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
970365 του SQL Server 2008 δημιουργεί που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2008 Service Pack 1
Επείγουσες επιδιορθώσεις του Microsoft SQL Server 2008 δημιουργούνται για συγκεκριμένο SQL Server service pack. Μια εγκατάσταση του SQL Server 2008 Service Pack 1, πρέπει να εφαρμόσετε μια επείγουσα επιδιόρθωση του SQL Server 2008 Service Pack 1. Από προεπιλογή, κάθε επείγουσα επιδιόρθωση που παρέχεται σε ένα service pack του SQL Server περιλαμβάνεται στο επόμενο service pack του SQL Server.

Εναλλακτικός τρόπος αντιμετώπισης


Για να επιλύσετε αυτό το ζήτημα για το μηχανισμό βάσης δεδομένων του SQL Server 2008, προσπαθήστε να προσδιορίσετε αν οποιαδήποτε μη ασφαλή συγκρότησης SQL CLR.NET φόρτωση σε μηχανισμό διαχείρισης βάσεων δεδομένων και πιθανώς Δημιουργία νημάτων που αντιμετωπίζουν αυτό το ζήτημα. Αποφύγετε τη χρήση των εν λόγω συγκροτήματα ή κατάργηση από το σύστημα ένα προς ένα, έως ότου το σύμπτωμα είναι απομονωμένη και subsides το πρόβλημα.

Για παράδειγμα, ενδέχεται να μπορείτε να δείτε πληροφορίες μηνύματα που μοιάζουν με το ακόλουθο στο αρχείο καταγραφής σφαλμάτων του SQL, για να εμφανίσετε το CLR SQL συγκροτήσεις που χρησιμοποιούνται και μπορεί προκαλούν το σύμπτωμα:
2011-03-29 12:01:01.00 spid51 μη ασφαλών συγκρότησης ' < όνομα συγκρότησης >, έκδοση = 0.0.0.0, κουλτούρα = ουδέτερη, publickeytoken = null, processorarchitecture = MSIL δεν ' φορτωθεί στο appdomain 1 (< όνομα appdomain >)

Κατάσταση


Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Αναφορές


Για πληροφορίες σχετικά με το μοντέλο τμηματικής συντήρησης για τον SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

935897 μια τμηματική μοντέλο συντήρησης είναι διαθέσιμα από την ομάδα του SQL Server για την παράδοση επείγουσες επιδιορθώσεις για ζητήματα που αναφέρθηκαν



Για περισσότερες πληροφορίες σχετικά με τη διάταξη ονομασίας των ενημερωμένων εκδόσεων του SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

822499 Νέα διάταξη ονομασίας για τα πακέτα ενημερωμένων εκδόσεων λογισμικού της Microsoft SQL Server


Για περισσότερες πληροφορίες σχετικά με την ορολογία των ενημερώσεων λογισμικού, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο στη Γνωσιακή Βάση της Microsoft:
824684 περιγραφή της βασικής ορολογίας που χρησιμοποιείται για την περιγραφή ενημερωμένων εκδόσεων λογισμικού της Microsoft