Partager via


Amélioration : Apporter plusieurs améliorations à l’utilitaire SQLIOSim

Résumé

Cette amélioration apporte les améliorations suivantes à l’utilitaire SQLIOSim et résout les problèmes d’intégrité des données qui peuvent être causés par la gestion des E/S. Pour plus d’informations sur l’utilitaire SQLIOSim, consultez présentation de l’utilitaire SQLIOSim.

Journalisation améliorée

  • Ajoute une nouvelle mémoire tampon en anneau pour suivre les erreurs, afin de rendre peu probable que les erreurs de la mémoire tampon d’anneau d’historique soient remplacées en raison de la substitution.
  • Ajoute diverses sorties qui contiennent le « nombre de cycles » et/ou la « date et heure » pour faciliter le débogage d’un problème.
  • Ajoute les sorties de et les informations de fsutil volume au fichier d’erreur, afin de mapper le décalage de fichier au décalage sur le disque physique et de filtrer plus facilement les traces du sous-système d’E/S.
  • Ajoute la sortie du temps universel coordonné (UTC) et de l’heure locale.
  • Décompose la sortie de l’en-tête de page dans le fichier d’erreur, tel que PageId, Checksum et Timestamp.
  • Affiche une liste des pages de la FILE HISTORY mémoire tampon en anneau pour localiser plus facilement les entrées de mémoire tampon en anneau.
  • Affiche l’horodatage, la date et l’heure, le processeur logique et d’autres colonnes dans la vue Sqliosim.log.xml ou ErrorLog.xslt .
  • Augmente la taille des mémoires tampons en anneau et réduit la fréquence de la substitution.
  • Fournit des sorties hexadécimales et décimales pour les sorties courantes telles que PageId, Checksum et Timestamp.
  • Mises à jour la disposition de Sqliosim.log.xml pour faciliter la lecture du fichier XML dans un éditeur de texte.
  • Les Sqliosim.log.xmlvalidés et ErrorLog.xslt peuvent être consultés correctement dans Microsoft Edge qui utilise le mode Internet Explorer (IE).

Horodatage de l’en-tête de page

Stocke la GetTickCount64 valeur dans l’en-tête de page pendant les opérations d’écriture. Le nombre de cycles est utile pour le suivi de l’écriture de la page et le filtrage des traces du sous-système d’E/S.

BNR (Octets non lus)

Le problème d’E/S entraîne le retour de l’opération de lecture comme si l’opération de lecture réussit, mais la mémoire tampon réelle n’est pas mise à jour ou lue. L’utilitaire SQLIOSim reçoit une lecture réussie, mais échoue aux vérifications de validation.

L’utilitaire SQLIOSim marque désormais les mémoires tampons de lecture à l’aide du modèle BNR avant d’émettre une lecture. Lorsque l’opération de lecture est retournée avec succès mais ne parvient pas à effectuer la lecture réelle, la validation continue d’échouer. Toutefois, les octets lus affichent . Modèle BNR qui indique un problème de sous-système d’E/S.

Nouvelle tentative d’écriture

Si le sous-système d’E/S rencontre une réinitialisation (plus courante dans les installations de stockage à attachement direct (DAS), les demandes d’opération d’écriture peuvent se terminer de manière incorrecte. L’utilitaire SQLIOSim ne garantit pas les fonctionnalités de nouvelle tentative d’écriture. Dans certains cas, l’utilitaire SQLIOSim tente de lire et de valider les données qui ne parvient pas à écrire.

L’utilitaire SQLIOSim est amélioré pour journaliser un échec d’écriture, puis effectuer une opération de nouvelle tentative d’écriture.

Verrouillage amélioré

Les mécanismes de verrouillage interne et l’activité de protection des pages (VirtualProtect) sont optimisés et améliorés pour garantir qu’un problème signalé par l’utilitaire SQLIOSim n’est pas dû à une faille logique dans l’utilitaire SQLIOSim.

Nouvelle tentative de lecture

Correction d’un problème qui provoque l’échec de la tentative de lecture-nouvelle lors d’une nouvelle tentative de lecture LDX (simulation de journal) ayant échoué.

Exemples de sorties améliorées

Le premier exemple de la sortie améliorée inclut les améliorations suivantes :

  • Heure UTC
  • Hexadécimal et décimal
  • Timestamp/Tick count
  • BNR
  • Extension de l’en-tête de page

Capture d’écran de la sortie améliorée, qui inclut l’heure UTC, l’hexadécimal et décimal, le nombre d’horodatages/graduations, le BNR et l’extension de l’en-tête de page.

Le deuxième exemple de sortie améliorée inclut les améliorations suivantes :

  • Mémoire tampon en anneau
  • Heure UTC
  • Groupe de plages de pages

Capture d’écran de la sortie améliorée, qui inclut la mémoire tampon en anneau, l’heure UTC et la plage de pages.

Le troisième exemple de la sortie améliorée inclut les améliorations suivantes :

  • Colonne de nombre de graduations
  • Colonne de processeur logique

Capture d’écran de la sortie améliorée, qui inclut les colonnes pour le nombre de cycles et le processeur logique.

Informations supplémentaires

Cette amélioration est incluse dans la mise à jour cumulative suivante pour SQL Server :

Mise à jour cumulative 7 pour SQL Server 2022

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et correctifs de sécurité qui se trouvaient dans la build précédente. Nous vous recommandons d’installer la dernière build pour votre version de SQL Server :

Dernière mise à jour cumulative pour SQL Server 2022

References

Découvrez la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.