ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Forum AtoutFox : QueryTimeout sans effet ?   

Sujet

rss Flux RSS des derniers messages

Vous devez vous identifier pour pouvoir poser une question ou répondre.

sam. 16 décembre 2017, 10h21

Luc
France France

atoutfox.public.association

QueryTimeout sans effet ?

Bonjour à tous

J'essaie de jouer avec le QueryTimeout d'une connexion à Postgres pour déjouer des transactions trop longues.
Mais j'ai beau manipuler la propriété "QueryTimeout" comme je veux, rien ne change. L'exemple de code ci-dessous devrait générer un timeout au bout de 1 seconde pour une requête qui dure 10 secondes (utilisation de pg_sleep). Mais il attend toujours les 10 secondes sans générer la moindre exception.

* Ouvrir la connexion
lnConn = SQLStringCONNECT('DRIVER={PostgreSQL Unicode};DATABASE=HFM;SERVER=127.0.0.1;PORT=5432;UID=PAA;PWD=mdp;')
If m.lnConn <= 0
  MessageBox("Connexion non établie")
Else
  * Poser le Timeout à 1 seconde
  SQLSetProp(lnConn, "QueryTimeOut", 1)
  MessageBox("Connexion établie : QueryTimeOut = " + Transform(SQLGetProp(lnConn, "QueryTimeOut")))

  * Exécuter une requête qui prend 10 secondes
  If SQLExec(m.lnConn, "Select pg_sleep(10)""toto") >= 0
    * Succès de la requête
    Select toto
    Browse
    Use
  Else
    * Echec de la requête
    MessageBox("Echec de la requête")
  Endif
Endif


Une idée ?

Permalink : http://www.atoutfox.org/nntp.asp?ID=0000018688
20 087 messages dans le forum • Liste complète des messages

Publicité

Les pubs en cours :


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3