Vous pouvez rencontrer des problèmes de délai d’expiration lors du déploiement d’objets CLR SQL via Visual Studio

Cet article vous aide à résoudre le problème de délai d’expiration qui se produit lors du déploiement d’objets CLR (SQL Common Language Runtime) via Visual Studio.

Version du produit d’origine : SQL Server
Numéro de base de connaissances d’origine : 2011805

Symptômes

Lorsque vous déployez des objets CLR SQL de Visual Studio vers SQL Server, vous pouvez rencontrer différentes erreurs similaires à ce qui suit :

  • Message d’erreur 1 :

    Erreur : échec du démarrage de la transaction de chargement de la base de données.
    Erreur : L’opération n’a pas pu être terminée

  • Message d’erreur 2 :

    Déploiement du fichier : TEstAssembly.dll, Chemin d’accès : E :\cases\CL MY\TEstAssembly\TEstAssembly\obj\Debug\TEstAssembly.dll ... Erreur : expiration du délai d’expiration. Période de délai d’attente écoulée avant l’achèvement de l’opération, ou le serveur ne répond pas.

Toutefois, si vous déployez les mêmes objets CLR à l’aide CREATE ASSEMBLY de la commande dans SQL Server Management Studio, vous ne rencontrez aucun problème.

Cause

Le problème se produit lorsque les objets SQL CLR sont si volumineux qu’il faut beaucoup de temps pour les déployer sur SQL Server. La valeur de délai d’expiration par défaut pour les connexions est de 15 secondes et pour les requêtes est de 30 secondes respectivement. Lors du déploiement d’assemblys volumineux, l’instruction CREATE ASSEMBLY qui est exécutée sur le serveur principal SQL Server peut prendre plus de 30 secondes pour retourner l’erreur décrite dans la section Symptômes .

Résolution

Augmentez le délai d’expiration de la requête et les valeurs de délai d’expiration de connexion dans Visual Studio à l’aide des procédures suivantes.

Modification du délai d’expiration de la requête

  1. Dans l’IDE Visual Studio, accédez à Tools -Options ->>Database Tools ->Query and View Designer.

  2. Vous pouvez décocher l’option Annuler une requête longue ou modifier la valeur de l’option Annuler après l’option **** en une valeur supérieure.

Modification du délai d’expiration de la connexion

  1. Dans l’IDE Visual Studio, activez l’Explorateur de serveurs en accédant à Afficher ->Explorateur de serveurs.

  2. Dans l’Explorateur de serveurs, cliquez avec le bouton droit sur la connexion à SQL Server où les objets CLR sont déployés et sélectionnez Modifier la connexion.

  3. Sélectionnez le bouton Avancé dans la fenêtre Modifier la connexion .

  4. Dans la fenêtre Propriétés avancées , remplacez la valeur du délai d’attente de connexion sous la section Initialisation par une valeur plus élevée.