Pas d'inquiétude, avec PBAdonf, c'est dans la poche ! ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.
  • Index
  •  » Base de données
  •  » Deconnections intempestive application PB sous serveur Citrix. Help !

#1 22-04-2010 13:05:48

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Deconnections intempestive application PB sous serveur Citrix. Help !

Bonjour à tous

voilà depuis maintenant plus d'un mois, je rencontre de gros problèmes avec une application distribuée sur un serveur Citrix.

De manière on va dire totalement aléatoire l'application de ferme purement et simplement ou affiche l'un des messages d'erreur suivant :

- System.NullReferenceException: Object reference not set to an instance of an object
- System.InvalidOperationException : ExecuteReader requires an open and available connection
- Cannot create new connection because in manual or distributed transaction mode.


A savoir qu'une fois cette deconnection (avec ou sans message d'erreur)  arrivée, on peut relancer l'application, refaire exactement les mêmes opérations et ne plus avoir ce problème jusqu'à (5min, 1 heure, plus ...)

J'ai pu isoler je pense le problème, il doit arriver lors du bind d'une datawindow

Détail technique :

- l'application est compilée en PB 10.0 Build 4510
- on se connecte à une base SQL Server 2005 via ADO.NET (OleDb)
- le serveur Citrix a un framework .NET 1.1

De plus, je n'arrive JAMAIS à reproduire le problème directement sous PB.
De plus je reproduis sur mon poste extremement rarement le problème alors que certains postes utilisateurs ont ces deconnections de l'ordre d'une bonne vingtaine par jour

Le plus étrange est que ce problème est apparu sans qu'il n'y ait eu de livraison effectuée, c'est arrivé du jour au lendemain. Les fréquences de déconnexion sont totalement variable. J'ai bon améliorer le code, effectuer de nombreuse optimisations mais rien n'y fait.

Des analyses au niveau infrastructure ont été faites et on m'assure que :

- la configuration sur la serveur Citrix n'a pas changé
- il n'y a aucun problème de flux réseau
- la base de données n'est pas endommagée

Avez vous déjà été confronté à ce problème ? Savez d'où peut provenir la cause, car j'ai beau poser des logs au niveau applicatif je ne trouve vraiment rien de signification

Merci beaucoup

Hors ligne

 

#2 26-04-2010 10:30:38

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Après avoir lu plusieurs site, la solution se trouverait peut être dans la désactivation du OLE DB Resource Pooling.
Quelqu'un peut il me dire où piloter celà depuis PB, car je n'ai aucun paramètre de connexion concernant le pooling

Hors ligne

 

#3 26-04-2010 11:03:04

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Apparemment c'est en base de registre : http://it.toolbox.com/wiki/index.php/Ch … ing_Status


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#4 26-04-2010 12:34:03

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Merci

Nous venons de le désactiver sur notre serveur de test, je vais tester tout celà

Hors ligne

 

#5 26-04-2010 14:21:12

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Bon en bien cette solution ne marche pas, j'ai eu un plantage au bout d'une heure d'utilisation

Par contre nous sommes en train d'essayer autre chose : les requetes qui seraient incriminées ont un point commun, elles n'ont pas de clause ORDER BY ...

Dernière modification par Worldinmyeyes (26-04-2010 14:21:31)

Hors ligne

 

#6 26-04-2010 15:16:20

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Et bien ce pas celà non plus : au bout de 20 minutes, à la fin de l'exécution d'une requete, j'ai eu un System.NullReferenceException: Object reference not set to an instance of an object.

Dans le log encore une fois, l'erreur se produit après la requete select (qui a duré 500ms ce qui n'est déjà pas normal) et avant le BIND OUTPUT DATAWINDOW
Et quand je redémarre l'application la même requete fonctionne de nouveau ...

Je ne sais plus trop où chercher ...

Dernière modification par Worldinmyeyes (26-04-2010 15:17:18)

Hors ligne

 

#7 26-04-2010 15:35:09

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

dans ton profil de connexion tu as "disable bind" et "static bind" ?


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#8 26-04-2010 15:47:12

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Oui ils sont tous les deux à 1
J'ai essayé de les mettre alternativement à 0 puis tous les 2 à 0, mais celà ne résoud pas le problème

Hors ligne

 

#9 27-04-2010 07:06:42

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

as-tu essayé en utilisant le client natif SQL (SNC) ?
Il y a d'ailleurs un paramètre de pooling :

Connection pooling

The SNC interface pools connections automatically using OLE DB pooling. To disable OLE DB pooling, type the following in the Extended Properties box on the Connection tab page in the Database Profile Setup dialog box:

OLE DB Services=-4

You can also type the following statement in code:

ProviderString='OLE DB Services=-4'

Autre piste : SQLCA.Lock='RC'


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#10 27-04-2010 07:55:44

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Bonjour,

Si vraiment il n'y a eu aucune modification sur le serveur (Windows update ?) et que le problème est apparu d'un seul coup, la volumétrie des données a bien dû augmenté.

Juste une idée, le manque de ressources peut être éventuellement responsable de ce comportement, as-tu essayé d'augmenter la mémoire allouée à la session citrix pour voir
si les choses s'améliore ?

Hors ligne

 

#11 27-04-2010 09:54:33

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Sais tu comment faire modifier la quantité de mémoire allouée

Celà veut dire qu'il aurait un paramètre qui fixerait la quantité de mémoire ? Où trouve t'on celà sur les paramètres Citrix ?

Hors ligne

 

#12 27-04-2010 11:33:41

buck  
Modérateur
Lieu: Dijon
Date d'inscription: 31-07-2008
Messages: 747
Pépites: 1,028,843
Banque: 171,170,849,654

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Je ne connais l'environnement Citrix. Mais, il est certain qu'il y a un paramètre qui limite la quantité de mémoire pouvant être alloué à une session.

Dans ce type d'environnement, un seul utilisateur ne peut pas s'approprier toute la mémoire disponible sur le serveur, il en faut pour les autres.

Hors ligne

 

#13 30-04-2010 09:57:13

Worldinmyeyes  
Membre Geek
Date d'inscription: 22-04-2010
Messages: 23
Pépites: 97
Banque: 0

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

On a changé les requetes où les problèmes apparaissient : le code PB a été changé par des procédures stockées
La fréquence des messages d'erreur a diminué légèrement mais le problème persiste toujours.

Au niveau des logs, lorsque la requete se passe bien, le temps de réponse a diminué par rapport à l'ancienne méthode, par contre dès que l'erreur arrive ou va arriver les temps de réponse sont tous supérieurs à 200-300 ms

Serait ce un problème de trafic réseau ?

Hors ligne

 

#14 30-04-2010 10:06:59

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Deconnections intempestive application PB sous serveur Citrix. Help !

Si le serveur Citrix est "à côté" du serveur BDD, il ne devrait pas y avoir de pb de trafic réseau...


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 
  • Index
  •  » Base de données
  •  » Deconnections intempestive application PB sous serveur Citrix. Help !

Pied de page des forums

Propulsé par FluxBB 1.2.22