Tâche #21388
Scénario #21165: Traitement express MEN (37-39)
Le timeout du client Creole ne devait pas être dépendant du contexte
Restant à faire (heures):
0.0
Description
Au cours de l'étude de #21375, j'ai constaté que certains programmes (Maj-Auto, reconfigure) avaient un timeout de 15 secondes alors que d'autres (CreoleGet) semblaient ne pas en avoir...
La faute à Zéphir !
>>> import socket >>> print socket.getdefaulttimeout() None >>> from zephir import lib_zephir >>> print socket.getdefaulttimeout() 15.0
Je proposerais de le fixer dans la "boucle for" déjà modifiée dans creole:f21cee06.
Il faut trouver une valeur adequat (sachant qu'il y a trois essais).
Demandes liées
Révisions associées
Utilisation du timeout eventlet pour le client Creole
Ref: #21388
Update translation
Ref: #21388
Historique
#1 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Statut changé de Nouveau à En cours
#2 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Assigné à mis à Joël Cuissinat
#3 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Restant à faire (heures) changé de 3.0 à 2.0
#4 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- % réalisé changé de 0 à 100
- Restant à faire (heures) changé de 2.0 à 0.25
La méthode de test est la même que celle décrite dans #21375#note-1, ce signalement remplace d'ailleurs le précédent :o
#5 Mis à jour par Joël Cuissinat il y a plus de 6 ans
- Lié à Tâche #21375: Étude des erreurs "Maj-Auto - timed out" visibles dans Jenkins ajouté
#6 Mis à jour par Scrum Master il y a plus de 6 ans
- Statut changé de En cours à Résolu
#7 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Restant à faire (heures) changé de 0.25 à 0.0
#8 Mis à jour par Daniel Dehennin il y a plus de 6 ans
Pour tester :
- Arrêter
creoled
service creoled stop
- Exécuter une boucle d’écoute sur le port 8000
root@amonecole-eclair:~# for i in {1..10}; do nc -l -p 8000 127.0.0.1; done
- Exécuter un CreoleGet en mode debug
root@amonecole-eclair:~# time CreoleGet --debug eole_release creole.client - Erreur de connexion '5 seconds', essai 1/3 creole.client - Erreur de connexion 'socket.error: [Errno 111] ECONNREFUSED', essai 2/3 creole.client - Erreur de connexion '5 seconds', essai 3/3 root - Erreur HTTP : le service creoled n'a pas répondu dans les délais Traceback (most recent call last): File "/usr/bin/CreoleGet", line 114, in main output(client.get_creole(var, **kwargs)) File "/usr/lib/python2.7/dist-packages/creole/client.py", line 433, in get_creole ret = self.get('/creole', *args, variable=name, **kwargs) File "/usr/lib/python2.7/dist-packages/creole/client.py", line 392, in get ret = self.request('/get', path, **kwargs) File "/usr/lib/python2.7/dist-packages/creole/client.py", line 319, in request ret = self._request(self.url + command + path, **kwargs) File "/usr/lib/python2.7/dist-packages/creole/client.py", line 298, in _request raise TimeoutCreoleClientError(msg.format(err)) TimeoutCreoleClientError: Erreur HTTP : le service creoled n'a pas répondu dans les délais real 0m14.059s user 0m0.132s sys 0m0.020s
#9 Mis à jour par Daniel Dehennin il y a plus de 6 ans
- Statut changé de Résolu à Fermé