Celery: 使用 python-amqp 时出现“Received 0x01 while expected 0xce”错误

创建于 2014-06-02  ·  3评论  ·  资料来源: celery/celery

在带有这些包的 Arch Linux 上:

python-celery 3.1.11-1
python-kombu 3.0.16-2
python-billiard 3.3.0.17-1
python-amqp 1.4.5-1
rabbitmq 3.3.1-1

产生下面的错误。 我读到从 python-amqp 切换到 librabbitmq-c 将修复错误,但我使用的是 Python 3,并且没有与 Python 3 兼容的 librabbitmq-c 可用。

[2014-06-02 03:23:50,278: WARNING/Worker-3] /usr/lib/python3.4/site-packages/celery/app/trace.py:364: RuntimeWarning: Exception raised outside body: UnexpectedFrame(None, 'Received 0x01 while expecting 0xce', None, ''):
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/celery/app/trace.py", line 283, in trace_task
    uuid, retval, SUCCESS, request=task_request,
  File "/usr/lib/python3.4/site-packages/celery/backends/amqp.py", line 136, in store_result
    delivery_mode=self.delivery_mode,
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 168, in publish
    routing_key, mandatory, immediate, exchange, declare)
  File "/usr/lib/python3.4/site-packages/kombu/connection.py", line 440, in _ensured
    return fun(*args, **kwargs)
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 180, in _publish
    [maybe_declare(entity) for entity in declare]
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 180, in <listcomp>
    [maybe_declare(entity) for entity in declare]
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 111, in maybe_declare
    return maybe_declare(entity, self.channel, retry, **retry_policy)
  File "/usr/lib/python3.4/site-packages/kombu/common.py", line 99, in maybe_declare
    return _maybe_declare(entity)
  File "/usr/lib/python3.4/site-packages/kombu/common.py", line 114, in _maybe_declare
    entity.declare()
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 508, in declare
    self.queue_bind(nowait)
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 541, in queue_bind
    self.binding_arguments, nowait=nowait)
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 551, in bind_to
    nowait=nowait)
  File "/usr/lib/python3.4/site-packages/amqp/channel.py", line 1003, in queue_bind
    (50, 21),  # Channel.queue_bind_ok
  File "/usr/lib/python3.4/site-packages/amqp/abstract_channel.py", line 67, in wait
    self.channel_id, allowed_methods)
  File "/usr/lib/python3.4/site-packages/amqp/connection.py", line 237, in _wait_method
    self.method_reader.read_method()
  File "/usr/lib/python3.4/site-packages/amqp/method_framing.py", line 189, in read_method
    raise m
  File "/usr/lib/python3.4/site-packages/amqp/method_framing.py", line 107, in _next_method
    frame_type, channel, payload = read_frame()
  File "/usr/lib/python3.4/site-packages/amqp/transport.py", line 170, in read_frame
    'Received 0x{0:02x} while expecting 0xce'.format(ch))
amqp.exceptions.UnexpectedFrame: Received 0x01 while expecting 0xce

  exc, exc_info.traceback)))

[2014-06-02 03:23:50,282: CRITICAL/MainProcess] Task pimostat.hardware_controller.UpdateEnabledSensors[0da0acd2-032b-4f51-b147-9ff510b34979] INTERNAL ERROR: UnexpectedFrame('', None, 'Received 0x01 while expecting 0xce', '')
Traceback (most recent call last):
  File "/usr/lib/python3.4/site-packages/celery/app/trace.py", line 283, in trace_task
    uuid, retval, SUCCESS, request=task_request,
  File "/usr/lib/python3.4/site-packages/celery/backends/amqp.py", line 136, in store_result
    delivery_mode=self.delivery_mode,
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 168, in publish
    routing_key, mandatory, immediate, exchange, declare)
  File "/usr/lib/python3.4/site-packages/kombu/connection.py", line 440, in _ensured
    return fun(*args, **kwargs)
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 180, in _publish
    [maybe_declare(entity) for entity in declare]
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 180, in <listcomp>
    [maybe_declare(entity) for entity in declare]
  File "/usr/lib/python3.4/site-packages/kombu/messaging.py", line 111, in maybe_declare
    return maybe_declare(entity, self.channel, retry, **retry_policy)
  File "/usr/lib/python3.4/site-packages/kombu/common.py", line 99, in maybe_declare
    return _maybe_declare(entity)
  File "/usr/lib/python3.4/site-packages/kombu/common.py", line 114, in _maybe_declare
    entity.declare()
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 508, in declare
    self.queue_bind(nowait)
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 541, in queue_bind
    self.binding_arguments, nowait=nowait)
  File "/usr/lib/python3.4/site-packages/kombu/entity.py", line 551, in bind_to
    nowait=nowait)
  File "/usr/lib/python3.4/site-packages/amqp/channel.py", line 1003, in queue_bind
    (50, 21),  # Channel.queue_bind_ok
  File "/usr/lib/python3.4/site-packages/amqp/abstract_channel.py", line 67, in wait
    self.channel_id, allowed_methods)
  File "/usr/lib/python3.4/site-packages/amqp/connection.py", line 237, in _wait_method
    self.method_reader.read_method()
  File "/usr/lib/python3.4/site-packages/amqp/method_framing.py", line 189, in read_method
    raise m
  File "/usr/lib/python3.4/site-packages/amqp/method_framing.py", line 107, in _next_method
    frame_type, channel, payload = read_frame()
  File "/usr/lib/python3.4/site-packages/amqp/transport.py", line 170, in read_frame
    'Received 0x{0:02x} while expecting 0xce'.format(ch))
amqp.exceptions.UnexpectedFrame: Received 0x01 while expecting 0xce
RabbitMQ Broker

最有用的评论

关闭这个,因为我们没有资源来完成这个任务。

所有3条评论

你用的是什么池? 你可以试试 3.1 分支吗? pip install https://github.com/celery/celery/zipball/3.1

我如何知道我使用的是哪个池?

另外,我使用的是 Celery 3.1.11。 我不使用 pip,但我的 Celery 来源来自:
https://pypi.python.org/packages/source/c/celery/celery-3.1.11.tar.gz

你想让我尝试使用另一个版本吗?

关闭这个,因为我们没有资源来完成这个任务。

此页面是否有帮助?
0 / 5 - 0 等级