Option query wait

Utilisez l'option query wait pour spécifier le délai (exprimé en secondes, de 0 à 2 147 483 647) pendant lequel une requête peut attendre des ressources avant d'expirer. Si la valeur par défaut -1 est utilisée ou si -1 est spécifié, le délai d'attente est calculé comme étant 25 fois le coût estimé de la requête.

Dans Microsoft SQL Server, les requêtes utilisant beaucoup de mémoire (par exemple les requêtes incluant des opérations de tri et de hachage) sont mises en attente si la quantité de mémoire est insuffisante pour leur exécution. Le délai imparti à la requête expire au bout d'une période prédéfinie calculée par SQL Server (25 fois le coût estimé de la requête) ou de la période spécifiée par la valeur non négative pour l'attente de la requête.

Important

Une transaction contenant la requête en attente peut contenir des verrous en attendant une quantité supplémentaire de mémoire. Dans de rares situations, il est possible qu'un blocage indétectable se produise. En réduisant la durée d’attente de la requête, vous réduisez également la probabilité de déclenchement de ces verrous. À la fin de celle-ci, une requête en attente est arrêtée et les verrous de la transaction sont libérés. Cependant, l'augmentation de la durée d'attente maximale risque d'augmenter la durée nécessaire pour l'achèvement de la requête. Il est déconseillé de modifier cette option.

L'option query wait est une option avancée. Si vous utilisez la procédure stockée système sp_configure pour modifier sa valeur, vous ne pouvez modifier l'option query wait que si la valeur 1 a été attribuée à l'option show advanced options. Le réglage prend effet immédiatement (sans redémarrage du serveur).