Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Urgent Pb Connexion et SQL-DMO

1 réponse
Avatar
Brigitte
Codé en SQL DMO ( dans du perl ) une tentative de connexion est bloquée
indéfiniement lorsque la machine qui héberge le SQL Server auquel le process
souhaite se connecter est stoppée, et ce quelques soit la méthode de login :
par authentification OS ou pas login nommé + . Le process client reste
toujours bloqué lorsque la machine redémarre.

Ce n'est pas un comportement normal, comment faire en sorte que l'appel à la
commande de connexion rende la main avec un status à jour ?

Nous avons déjà testé :
my $srv = Win32::OLE-> new("SQLDMO.SQLServer") or die "connexion
impossible\n";
$srv->{'LoginTimeout'} = 30; # 30 secondes
$srv->Connect($server, $user, $passwd);

- Comme le montre le tableau ci-dessous, le meme script perl a un
comportement correct dans certain cas, mais a un comportement ingérable en
cas d'arret de la machine et il lreste bloqué même quand elle redémarre.
- Nous avons bien patché la partie cliente avec le dernier MDAC disponible
- Je ne peux lire la propriété Status de l'objet SQLServer qu'une fois
connecté à celui-ci et c'est bien là le pb.
- J'ai testé le cas LoginTimeout = 0, cela revient à une attente infinie (
no time out ) , c'est le comportement que je veux éviter : que la tentative
de connexion rende la main et avoir un status d'echec.

Merci

Bonne journée

Brigitte

1 réponse

Avatar
Brigitte
Je vous fais part du tableau :

isql -E -SHostNameSqlName -l1 DMO with
LoginTimeout = 1
HostName
n'existe pas OK
OK

Host OK et
SqlName OK
attente infinie
n'existe pas

Host stoppé OK
attente infinie

Host Ok et
SQL Server stoppé OK
OK

Bonne fin de journée et merci

Brigitte


"Brigitte" a écrit :

Codé en SQL DMO ( dans du perl ) une tentative de connexion est bloquée
indéfiniement lorsque la machine qui héberge le SQL Server auquel le process
souhaite se connecter est stoppée, et ce quelques soit la méthode de login :
par authentification OS ou pas login nommé + . Le process client reste
toujours bloqué lorsque la machine redémarre.

Ce n'est pas un comportement normal, comment faire en sorte que l'appel à la
commande de connexion rende la main avec un status à jour ?

Nous avons déjà testé :
my $srv = Win32::OLE-> new("SQLDMO.SQLServer") or die "connexion
impossiblen";
$srv->{'LoginTimeout'} = 30; # 30 secondes
$srv->Connect($server, $user, $passwd);

- Comme le montre le tableau ci-dessous, le meme script perl a un
comportement correct dans certain cas, mais a un comportement ingérable en
cas d'arret de la machine et il lreste bloqué même quand elle redémarre.
- Nous avons bien patché la partie cliente avec le dernier MDAC disponible
- Je ne peux lire la propriété Status de l'objet SQLServer qu'une fois
connecté à celui-ci et c'est bien là le pb.
- J'ai testé le cas LoginTimeout = 0, cela revient à une attente infinie (
no time out ) , c'est le comportement que je veux éviter : que la tentative
de connexion rende la main et avoir un status d'echec.

Merci

Bonne journée

Brigitte