Précédent   Forum des professionnels en informatique > Bases de données > Firebird
Firebird Forum d'entraide sur le SGBD Firebird. Avant de poster -> F.A.Q Firebird, Tutoriels
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/01/2008, 22h54   #1
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 47
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 47
Points : 26
Points : 26
Par défaut Firebird et .net

bonjour à tous

nous venons de développer quelques appli sous .net au lieu de Delphi et nous rencontrons une tonne de problèmes de stabilité de firebird. On ne sait pas si il y a un rapport entre .net et ces pb mais notre moteur firebird 1.5.3 tient apparemment pas la charge. Et s'arrête tout seul - sous linux opensuse superserveur - seul un kill -9 peut en venir à bout. On a l'impression d'une grosse perte de mémoire... car il pète même sans charge importante.

Concernant .net, nous gérons des pools de connexion à FB.

Un avis ou une idée sur l'origine du problème ?

D'avance merci.
jose.ignacio.agata est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2008, 14h32   #2
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 324
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 324
Points : 4 785
Points : 4 785
Vous employez le provider ADO.net?
Vous utilisez des datareaders? Etes-vous sûr de bien appeler les fonctions dispose()?

Vous est-il possible de faire un test avec la 2.03?
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2008, 18h28   #3
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 47
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 47
Points : 26
Points : 26
on est sur 1.53 et 2.0.3
Firebird .Net Data Provider Version 2.0.1 for .NET 2.0
pas de datareader et on utilise bien le dispose()
jose.ignacio.agata est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2008, 12h48   #4
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
Le dispose() ne suffit pas
le dispose() ne fait que mettre les choses à la poubelle mais ne vide pas la poubelle, il faut faire un GC.collect()
Ensuite il faut voir comment son gérées les connexions et leur libération
avec .net on peut aller vite dans le mur sur la gestion de la mémoire.
Je ne suis pas un spécialiste de .Net mais je sais qu'on peut très vite avec aller dans des fuites de mémoires importantes.
Mais clairement, c'est un problème .Net
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2008, 14h39   #5
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 324
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 324
Points : 4 785
Points : 4 785
Citation:
Le dispose() ne suffit pas
le dispose() ne fait que mettre les choses à la poubelle mais ne vide pas la poubelle, il faut faire un GC.collect()
Non c'est pas possible, les cas ou appeler soi-même le garbage collector est justifié sont très très rares. Surtout que dans cet exemple c'est le serveur qui crash, pas l'application cliente.
J'ai une application multi-site développée en .Net sur firebird, c'est impeccable niveau stabilité, la seule chose c'est que mon FB tourne sous du windows.

Citation:
avec .net on peut aller vite dans le mur sur la gestion de la mémoire.
Je ne suis pas un spécialiste de .Net mais je sais qu'on peut très vite avec aller dans des fuites de mémoires importantes.
C'est absolument faux, le seul moyen d'avoir des fuites de mémoires c'est d'avoir des "strong references" sur des objets dont on a perdu la trace (ce qui n'arrive quasiment qu'avec les event handler lorsqu'ils sont mal gérés ou mal compris).
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2008, 19h27   #6
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
pour .net, c'est possible que tu es raison, je ne suis pas spécialiste et effectivement le dispose() doit pouvoir suffire, quand au crash coté serveur, sous 1.5 je connais quelques cas possibles mais résolus en 2.O
après sans connaitre les traitements demandés, il est impossible de répondre
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2008, 22h19   #7
Expert Confirmé Sénior
 
Avatar de _skip
 
Homme
Développeur d'applications
Inscription : novembre 2005
Messages : 2 324
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : Suisse

Informations professionnelles :
Activité : Développeur d'applications
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : novembre 2005
Messages : 2 324
Points : 4 785
Points : 4 785
Il faudrait qu'il puisse monitorer la taille du pool de connexion dans son application .Net. Afin de s'assurer qu'elles sont correctement recyclées.
_skip est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h07.


 
 
 
 
Partenaires

Hébergement Web