lors de l'exécution de céleri - Un travailleur proj renvoie cette erreur
[2018-11-15 12:02:53,607: CRITICAL/MainProcess] Erreur irrécupérable : AttributeError("'float' object has no attribut 'items'")
Traceback (appel le plus récent en dernier) :
Fichier "/user/lib/python3.6/site-packages/celery/worker/worker.py", ligne 205, au début
self.blueprint.start(self)
Fichier "/user/lib/python3.6/site-packages/celery/bootsteps.py", ligne 119, au début
step.start(parent)
Fichier "/user/lib/python3.6/site-packages/celery/bootsteps.py", ligne 369, au début
retourner self.obj.start()
Fichier "/user/lib/python3.6/site-packages/celery/worker/consumer/consumer.py", ligne 317, au début
blueprint.start(self)
Fichier "/user/lib/python3.6/site-packages/celery/bootsteps.py", ligne 119, au début
step.start(parent)
Fichier "/user/lib/python3.6/site-packages/celery/worker/consumer/consumer.py", ligne 593, au début
c.loop( c.loop_args())Fichier "/user/lib/python3.6/site-packages/celery/worker/loops.py", ligne 91, dans asynloopsuivant(boucle)Fichier "/user/lib/python3.6/site-packages/kombu/asynchronous/hub.py", ligne 354, dans create_loopcb( cbargs)
Fichier "/user/lib/python3.6/site-packages/kombu/transport/redis.py", ligne 1040, dans on_readable
self.cycle.on_readable(fileno)
Fichier "/user/lib/python3.6/site-packages/kombu/transport/redis.py", ligne 337, dans on_readable
chan.handlers type
Fichier "/user/lib/python3.6/site-packages/kombu/transport/redis.py", ligne 724, dans _brpop_read
self.connection._deliver(loads(bytes_to_str(item)), dest)
Fichier "/user/lib/python3.6/site-packages/kombu/transport/virtual/base.py", ligne 983, dans _deliver
rappel (message)
Fichier "/user/lib/python3.6/site-packages/kombu/transport/virtual/base.py", ligne 632, dans _callback
self.qos.append(message, message.delivery_tag)
Fichier "/user/lib/python3.6/site-packages/kombu/transport/redis.py", ligne 149, en annexe
pipe.zadd(self.unacked_index_key, time(), delivery_tag) \
Fichier "/user/lib/python3.6/site-packages/redis/client.py", ligne 2263, dans zadd
pour la paire dans iteritems (mapping):
Fichier "/user/lib/python3.6/site-packages/redis/_compat.py", ligne 123, dans iteritems
retourner iter(x.items())
AttributeError : l'objet 'float' n'a pas d'attribut 'items'
Utilisation de Python 3.6.6, redis 3.0.0.post1
J'obtiens une erreur très similaire ce matin :
[2018-11-15 09:55:33,342: CRITICAL/MainProcess] Unrecoverable error: AttributeError("'float' object has no attribute 'iteritems'",)
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/celery/worker/worker.py", line 205, in start
self.blueprint.start(self)
File "/usr/local/lib/python2.7/dist-packages/celery/bootsteps.py", line 119, in start
step.start(parent)
File "/usr/local/lib/python2.7/dist-packages/celery/bootsteps.py", line 369, in start
return self.obj.start()
File "/usr/local/lib/python2.7/dist-packages/celery/worker/consumer/consumer.py", line 317, in start
blueprint.start(self)
File "/usr/local/lib/python2.7/dist-packages/celery/bootsteps.py", line 119, in start
step.start(parent)
File "/usr/local/lib/python2.7/dist-packages/celery/worker/consumer/consumer.py", line 593, in start
c.loop(*c.loop_args())
File "/usr/local/lib/python2.7/dist-packages/celery/worker/loops.py", line 91, in asynloop
next(loop)
File "/usr/local/lib/python2.7/dist-packages/kombu/asynchronous/hub.py", line 354, in create_loop
cb(*cbargs)
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/redis.py", line 1040, in on_readable
self.cycle.on_readable(fileno)
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/redis.py", line 337, in on_readable
chan.handlers[type]()
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/redis.py", line 724, in _brpop_read
self.connection._deliver(loads(bytes_to_str(item)), dest)
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/virtual/base.py", line 983, in _deliver
callback(message)
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/virtual/base.py", line 632, in _callback
self.qos.append(message, message.delivery_tag)
File "/usr/local/lib/python2.7/dist-packages/kombu/transport/redis.py", line 149, in append
pipe.zadd(self.unacked_index_key, time(), delivery_tag) \
File "/usr/local/lib/python2.7/dist-packages/redis/client.py", line 2263, in zadd
for pair in iteritems(mapping):
File "/usr/local/lib/python2.7/dist-packages/redis/_compat.py", line 94, in iteritems
return x.iteritems()
AttributeError: 'float' object has no attribute 'iteritems'
Python 2.7, Redis 3.0.0.post1
Pas un problème de céleri - Semble être un problème avec Redis 3.0.0.post1 installé via pip.
Solution : Restaurer redis avec pip : pip install redis==2.10.6
tout fonctionne à nouveau pour moi.
L'épinglage des dépendances est un problème de céleri. Semble être corrigé ici cependant
https://github.com/celery/celery/pull/5176
Pouvons-nous publier rapidement 4.2.2 pour résoudre ce problème, s'il vous plaît ?
Vous pouvez épingler la dépendance en dehors de Celery jusqu'à ce que cela soit corrigé.
Utilisateurs de Pipenv : ajoutez redis = "~=2.10.6"
_avant_ l'entrée celery
dans le Pipfile
.
c'est corrigé dans le kombu et le maître du céleri
Pouvons-nous obtenir une version de correctif pour le céleri ?
Pas un problème de céleri - Semble être un problème avec Redis 3.0.0.post1 installé via pip.
Solution : Restaurer redis avec pip :
pip install redis==2.10.6
tout fonctionne à nouveau pour moi.
Merci
Pouvons-nous obtenir une version de correctif pour le céleri ?
Une sortie de patch serait géniale !!!
Y a-t-il quelque chose que la communauté peut faire pour rendre cela possible le plus tôt possible ? Comme vous pouvez le voir, de nombreux projets connexes font référence à ce problème et identifient la version redis.
J'ai sorti un patch pour kombu. Cela devrait résoudre le problème.
Veuillez vous abonner aux notifications de publication sur nos référentiels au lieu de nous contacter.
Pas un problème de céleri - Semble être un problème avec Redis 3.0.0.post1 installé via pip.
Solution : Restaurer redis avec pip :
pip install redis==2.10.6
tout fonctionne à nouveau pour moi.
Travaillé merci !!
Il devrait être corrigé dans la dernière mise à jour : Celery 4.3.0 (kobu 4.5.0).
Vous n'avez pas besoin de restaurer la version redis.
Il devrait être corrigé dans la dernière mise à jour : Celery 4.3.0 (kobu 4.5.0).
Vous n'avez pas besoin de restaurer la version redis.
C'est vrai que ça marche dans mon cas.
Salut,
Je reçois un problème AttributeError : l'objet 'float' n'a pas d'attribut 'item'
lors de l'exécution des rappels de fonction de rappel = [checkpointer, earlystopper, lr_reducer, TensorBoardColabCallback(tbc)]
qui appellent /usr/local/lib/python3.6/dist-packages/tensorboardcolab/callbacks.py
J'ai installé install redis = = 2.10.6, le problème persiste.
J'utilise google colab.
@ dhanashri88 - Je ne pense pas que ce soit un problème de céleri. Votre rapport/retrace de problème n'est pas complet, mais il semble qu'il s'agisse d'un problème de tensorboard. Veuillez demander de l'aide à leur canal d'assistance/liste de diffusion/problèmes github.
Commentaire le plus utile
Pas un problème de céleri - Semble être un problème avec Redis 3.0.0.post1 installé via pip.
Solution : Restaurer redis avec pip :
pip install redis==2.10.6
tout fonctionne à nouveau pour moi.