Celery: AttributeError: objek 'float' tidak memiliki atribut 'item'

Dibuat pada 15 Nov 2018  ·  16Komentar  ·  Sumber: celery/celery

saat menjalankan seledri -Pekerja proj melempar kesalahan ini

[2018-11-15 12:02:53,607: CRITICAL/MainProcess] Kesalahan yang tidak dapat dipulihkan: AttributeError("objek 'float' tidak memiliki atribut 'item'",)
Traceback (panggilan terakhir terakhir):
File "/user/lib/python3.6/site-packages/celery/worker/worker.py", baris 205, di awal
self.blueprint.start(mandiri)
File "/user/lib/python3.6/site-packages/celery/bootsteps.py", baris 119, di awal
langkah.mulai (induk)
File "/user/lib/python3.6/site-packages/celery/bootsteps.py", baris 369, di awal
kembalikan self.obj.start()
File "/user/lib/python3.6/site-packages/celery/worker/consumer/consumer.py", baris 317, di awal
cetak biru.mulai (sendiri)
File "/user/lib/python3.6/site-packages/celery/bootsteps.py", baris 119, di awal
langkah.mulai (induk)
File "/user/lib/python3.6/site-packages/celery/worker/consumer/consumer.py", baris 593, di awal
c.loop( c.loop_args())File "/user/lib/python3.6/site-packages/celery/worker/loops.py", baris 91, di asynloopberikutnya (putaran)File "/user/lib/python3.6/site-packages/kombu/asynchronous/hub.py", baris 354, di create_loopcb ( cbarg)
File "/user/lib/python3.6/site-packages/kombu/transport/redis.py", baris 1040, di on_readable
self.cycle.on_readable(fileno)
File "/user/lib/python3.6/site-packages/kombu/transport/redis.py", baris 337, di on_readable
tipe chan.handlers
File "/user/lib/python3.6/site-packages/kombu/transport/redis.py", baris 724, di _brpop_read
self.connection._deliver(loads(bytes_to_str(item)), tujuan)
File "/user/lib/python3.6/site-packages/kombu/transport/virtual/base.py", baris 983, di _deliver
panggilan balik (pesan)
File "/user/lib/python3.6/site-packages/kombu/transport/virtual/base.py", baris 632, di _callback
self.qos.append(pesan, pesan.delivery_tag)
File "/user/lib/python3.6/site-packages/kombu/transport/redis.py", baris 149, di append
pipe.zadd(self.unacked_index_key, time(), delivery_tag) \
File "/user/lib/python3.6/site-packages/redis/client.py", baris 2263, di zadd
untuk pasangan dalam item (pemetaan):
File "/user/lib/python3.6/site-packages/redis/_compat.py", baris 123, dalam item
kembalikan iter(x.items())
AttributeError: objek 'float' tidak memiliki atribut 'item'

Menggunakan Python 3.6.6, redis 3.0.0.post1

Komentar yang paling membantu

Bukan masalah seledri - Tampaknya ada masalah dengan Redis 3.0.0.post1 yang diinstal melalui pip.

Solusi: Putar kembali redis dengan pip: pip install redis==2.10.6

semuanya bekerja lagi untuk saya.

Semua 16 komentar

Saya mendapatkan kesalahan yang sangat mirip pagi ini:

[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

Bukan masalah seledri - Tampaknya ada masalah dengan Redis 3.0.0.post1 yang diinstal melalui pip.

Solusi: Putar kembali redis dengan pip: pip install redis==2.10.6

semuanya bekerja lagi untuk saya.

Penyematan ketergantungan adalah masalah seledri. Tampaknya diperbaiki di sini
https://github.com/celery/celery/pull/5176

Bisakah kami merilis 4.2.2 dengan cepat untuk menyelesaikan ini?

Anda dapat menyematkan ketergantungan di luar Seledri hingga ini diperbaiki.

Pengguna Pipenv: tambahkan redis = "~=2.10.6" _before_ entri celery di Pipfile .

itu diperbaiki di master kombu dan seledri

Bisakah kita mendapatkan rilis patch untuk seledri?

Bukan masalah seledri - Tampaknya ada masalah dengan Redis 3.0.0.post1 yang diinstal melalui pip.

Solusi: Putar kembali redis dengan pip: pip install redis==2.10.6

semuanya bekerja lagi untuk saya.

Terima kasih

Bisakah kita mendapatkan rilis patch untuk seledri?

Rilis tambalan akan sangat bagus!!!

Apakah ada sesuatu yang dapat dilakukan komunitas untuk memungkinkannya lebih cepat daripada nanti? Seperti yang Anda lihat, banyak proyek terkait mengacu pada masalah ini dan menentukan versi redis.

Saya memang merilis patch untuk kombu. Ini harus menyelesaikan masalah.
Silakan berlangganan untuk pemberitahuan rilis di repositori kami alih-alih melakukan ping kepada kami.

Bukan masalah seledri - Tampaknya ada masalah dengan Redis 3.0.0.post1 yang diinstal melalui pip.

Solusi: Putar kembali redis dengan pip: pip install redis==2.10.6

semuanya bekerja lagi untuk saya.

Berhasil terima kasih!!

Ini harus diperbaiki dalam pembaruan terbaru: Seledri 4.3.0 (kobu 4.5.0).
Anda tidak perlu mengembalikan versi redis.

Ini harus diperbaiki dalam pembaruan terbaru: Seledri 4.3.0 (kobu 4.5.0).
Anda tidak perlu mengembalikan versi redis.

Benar, ini berfungsi dalam kasus saya.

Hai,
Saya mendapatkan masalah AttributeError: objek 'float' tidak memiliki atribut 'item'
saat menjalankan fungsi panggilan balik callback = [checkpointer, earlystopper, lr_reducer, TensorBoardColabCallback(tbc)]
yang memanggil /usr/local/lib/python3.6/dist-packages/tensorboardcolab/callbacks.py
Saya telah menginstal install redis==2.10.6 masih ada masalah.
Saya menggunakan google colab.

@dhanashri88 - Saya tidak berpikir ini adalah masalah Seledri. Laporan masalah/traceback Anda tidak lengkap, tetapi sepertinya ini adalah masalah papan tensor. Silakan minta saluran dukungan/milis/masalah github mereka untuk bantuan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat