PetitMuf
Messages postés2Date d'inscriptionvendredi 18 avril 2008StatutMembreDernière intervention18 novembre 2008
-
4 nov. 2008 à 16:35
PetitMuf
Messages postés2Date d'inscriptionvendredi 18 avril 2008StatutMembreDernière intervention18 novembre 2008
-
18 nov. 2008 à 09:52
Bonjour,
J'ai un problème avec la recherche fulltext sur SQL Server 2005. Lorsque j'execute un requête (quelque soit le prédicat..., mais j'utilise plutôt le FREETEXTTABLE), la première execution dure environ 45 secondes pour retourner seulement... 5 lignes. Ensuite je refais un recherche (en modifiant le texte à rechercher), et ça réponds du tac o tac !!
Et si je n'utilise plus la recherche pendant un moment et que je reviens dessus plus tard (genre 15 ou 20 minutes après), ça recommence, lent d'abord puis OK ensuite. Une idée sur mon problème ???
PetitMuf
Messages postés2Date d'inscriptionvendredi 18 avril 2008StatutMembreDernière intervention18 novembre 2008 18 nov. 2008 à 09:52
En fait, rien à voir avec le cache ou autre problème de performance (j'avais vérifié le plan d'execution et dans les 2 cas, il était identique...) J'ai finalement trouvé la réponse dans un forum de Microsoft, grace aux 45s d'attente qui est en fait un timeout car sql essaie de se connecter sur internet pour vérifier si le certificat du word-breaker n'est pas révoqué ! S'il n'arrive pas au bout de 45s, il arrête.
2 manières de résoudre :
1-> Désactiver les vérification du cértificat par un sp_fulltext_service 'verify_signature', 0;
2-> Modifier les paramètres du winhttp avec le Proxycfg.exe
hymnuade
Messages postés39Date d'inscriptionmardi 21 décembre 2004StatutMembreDernière intervention15 février 2010 8 nov. 2008 à 14:58
Salut, si tu exécutes des recherches full-text comme n'importe quelle autre requête plusieurs fois d'affilée, tu disposes la première fois d'une mise en cache qui justifie la rapidité de la seconde exécution.
Exemple, fais ta requête, redémarre le service MSSQLSERVER et recommence ta requête, elle mettra le même temps que la première fois. Pourquoi, vide du cache tout simplement.Donc tu dois optimisé le délai de la première requête qui est représentatif du plan d'exécution.