Symptômes
Supposons que vous installiez la version 64 bits de Microsoft SQL Server 2014, 2016 ou 2017 sur un ordinateur exécutant Windows Server 2012 ou une version antérieure du système d’exploitation Windows. Lorsque SQL Server utilise tout l’espace d’adressage virtuel en mode utilisateur, vous pouvez recevoir un message d’erreur mémoire insuffisante dans le journal des erreurs SQL Server. En outre, l’exécution des requêtes prend beaucoup de temps et l’attente SOS_MEMORY_TOPLEVELBLOCKALLOCATOR se produit.
Lorsque vous examinez les points d’informations suivants, vous constaterez que l’espace d’adressage virtuel disponible est très faible :
- DBCC MEMORYSTATUS - Section Nombres de processus/système - Mémoire virtuelle disponible
- DMV : sys.dm_os_process_memory - virtual_address_space_available_kb de colonne
Ces valeurs commencent autour de 8 téraoctets (To) sur un processus x64 et continuent à descendre et à atteindre quelques gigaoctets (Go).
Lorsque vous êtes au stade où l’espace d’adressage virtuel disponible est très faible, les requêtes qui tentent d’effectuer l’allocation de mémoire peuvent également rencontrer un type d’attente CMEMTHREAD.
Les points de données suivants continueront d’augmenter au fil du temps :
- DMV : sys.dm_os_process_memory et sys.dm_os_memory_nodes - virtual_address_space_reserved_kb de colonne
- DBCC MEMORYSTATUS - Section Gestionnaire de mémoire - Machine virtuelle réservée
Ces valeurs augmentent généralement en multiples de la valeur « mémoire maximale du serveur » jusqu’à près de 8 To.
Note Le problème associé est également décrit dans La base de connaissances 3074434.
Résolution
Cette mise à jour est incluse dans les mises à jour cumulatives suivantes pour SQL Server :
Mise à jour cumulative 4 pour SQL Server 2017
Mise à jour cumulative 8 pour SQL Server 2016 SP1
Mise à jour cumulative 10 pour SQL Server Service Pack 2 2014
À propos des mises à jour cumulatives pour SQL Server :
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et tous les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
Dernière mise à jour cumulative pour SQL Server 2017
Dernière mise à jour cumulative pour SQL Server 2016
Dernière mise à jour cumulative pour SQL Server 2014
Note Après avoir appliqué cette mise à jour, vous devez ajouter l’indicateur de trace 8075 en tant que paramètre de démarrage pour activer cette modification.
État
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».
Références
En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.