|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Debug Appli Delphi Inscription : mars 2008 Messages : 66 ![]() |
Bonjour ,
Voici un moment que je n'ai pas posté sur le forum. Bon j'expose mon problème, je fais du support pour une entreprise qui édite des applications dans le médical. En fait je détecte les problèmes dans le source, j'analyse où se situent les problèmes et quand j'ai trouvé où ça coince dans le source, je donne mon avis au développeur, et éventuellement lui indique une solution. La difficulté est d'intervenir sur du code que l'on n'a pas développe soi même, et du coup de ne plus coder, bref. Là j'ai un souci sur une appli qui utilise un service pour envoyer les données patients dans une autre application. Le service est démarré mais il ne se passe plus rien. On peut redémarrer le service et du coup les données passent, mais bon... Un petit moment après le service est de nouveau dans l'état : "je suis démarré mais je traite plus". Voila je ne sais pas si cela est clair mais en tout cas merci par avance. |
|
|
00
|
|
|
#2 | |
![]() ![]() Inscription : septembre 2008 Messages : 2 857 ![]() |
Citation:
Mais le problème pourrait venir de la boucle Execute qui attend indéfiniment un ordre qui ne vient pas. (un mutex global jamais signalé par exemple) |
|
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Debug Appli Delphi Inscription : mars 2008 Messages : 66 ![]() |
Bonjour,
Oui en effet je suis d'accord, mais je ne souhaite pas fournir du code pour l'instant sans avoir au moins un peu déblayé une piste... |
|
|
00
|
|
|
#4 | |
|
Expert Confirmé
![]() ![]() |
Bonjour,
Citation:
Sans accès au code (je peux comprendre pour des raisons de confidentialités ), je suggère de placer des instructions de trace à différents endroits du programme (écriture d'informations dans un fichier texte avec les valeurs qui semblent pertinentes)...Le développeur doit bien avoir une unité avec ce genre de routines. Quelques options de compilation et elles peuvent même être intégrées ad vitam aeternam au source.
__________________
Philippe. |
|
|
|
10
|
|
|
#5 | |
![]() ![]() Inscription : septembre 2008 Messages : 2 857 ![]() |
Citation:
|
|
|
|
10
|
|
|
#6 | |
|
Expert Confirmé
![]() ![]() |
Citation:
J'ai déjà implémenté des services, mais cette fonction m'avait complètement échappé (et comme j'ai ma petite unité adéquate...) ! Il faut quand même que les journaux soient paramétrés pour enregistrer les événements, ce me semble... En tous cas, merci pour ce rappel.
__________________
Philippe. |
|
|
|
00
|
|
|
#7 | ||
![]() ![]() Inscription : septembre 2008 Messages : 2 857 ![]() |
Citation:
Citation:
) Mon seul essai fonctionnait bien sous XP et 7 mais se soldait par une plantée sous 2003. J'ai vite aborté...
|
||
|
|
00
|
|
|
#8 | ||
|
Membre à l'essai
![]() Debug Appli Delphi Inscription : mars 2008 Messages : 66 ![]() |
Bonjour,
Merci à Andnotor et Ph.B pour ces pistes . Je vais suggerer à mes collegues de mettre en place ces traces . Nous avons egalement commencé à verifier ce qui se passe au niveau d'Oracle , car l'appli concerné sert de passerelle entre deux bases de données. Nous utilisons cette requette: Code sql :
Le service utilise l'exe hexa2optrait.exe Quand le service est démarré mais "bloqué" on voit que la requete en cours vise une table vide. Je ne pense pas que cela ai une incidence j'aurai aimé avoir votre avis à ce sujet. |
||
|
|
00
|
|
|
#9 | |||
|
Expert Confirmé
![]() ![]() |
Citation:
__________________
Philippe. |
|||
|
|
00
|
|
|
#10 |
|
Membre à l'essai
![]() Debug Appli Delphi Inscription : mars 2008 Messages : 66 ![]() |
Bonjour,
Le probleme n'est pas réapparu depuis que j'ai redémarré le service. Cependant je sais qu'il existe et se manifestera de nouveaux. Pour la requette en fait elle permet juste de voir qu'elle sont les requettes uitilsées par l'interface pour envoyer les données d'une base à une autre . Et on a vu qu apparament c'est toujours la meme qui bloque . Nous allons travailler autour de cette requette surement la supprimé car ell est pratiquement inutile. c'est un simple : select * from tableperiodic; en tout cas nous avons une piste meme si ce n'est pas terminé , merci a vous tous.
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com