KB4540107 - CORRECTIF : la tâche système ou en arrière-plan peut échouer lorsque le nombre de sessions atteint la limite maximale en SQL Server 2016, 2017 et 2019

S’applique à
SQL Server 2016 Service Pack 2 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2019 on Windows SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows

Symptômes

Lorsque le nombre de sessions utilisées à la fois par les connexions utilisateur et les tâches système ou en arrière-plan atteint la limite maximale (32 767 ou moins, selon l’option de configuration du serveur connexions utilisateur) dans Microsoft SQL Server 2016 ou 2019, une tâche système ou en arrière-plan requise ne s’exécute pas. En outre, l’erreur 17300 peut être consignée dans le journal des erreurs. Si cette tâche est nécessaire pour que SQL Server continue à s’exécuter comme prévu (par exemple, la tâche du répartiteur XE), cela peut entraîner l’arrêt de SQL Server.

É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ésolution

Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :

À 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 :

Informations supplémentaires

Dans SQL Server, toute connexion utilisateur ou tâche système doit s’exécuter dans une session en ayant un identificateur unique compris entre 1 et 32 767. Les 50 premières sessions sont réservées aux tâches système, et le reste des sessions peut être partagé entre les connexions utilisateur et les tâches système. Notez que le nombre réel de tâches système varie en fonction de la configuration du serveur ou de la base de données, comme l’utilisation de groupes de disponibilité, l’exécution de Full-Text recherche, etc. Si suffisamment de connexions utilisateur sont créées pour ne laisser aucun espace pour d’autres tâches système, la tentative de création d’une tâche système supplémentaire peut échouer. Même si l’administrateur réduit le nombre maximal de connexions utilisateur via la configuration du serveur, l’espace pour seulement 50 tâches système est garanti.

Ce correctif augmente le nombre de tâches système garanties à au moins 500. Cela signifie que si le nombre configuré de connexions utilisateur est défini sur une valeur par défaut ou supérieure à 32 267, le nombre réel de connexions utilisateur sera limité à 32 267 pour garantir que 500 tâches système peuvent s’exécuter. Si l’utilisateur définit le nombre de connexions utilisateur sur moins de 32 267, tout l’espace restant jusqu’à 32 767 sera disponible pour les tâches système (au lieu de 50 tâches système avant d’appliquer ce correctif).

Références

En savoir plus à propos de la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.