Skip to content

TypeError: not all arguments converted during string formatting; from AMQPError('Unknown AMQP method %s' % method_sig) #217

@yourcelf

Description

@yourcelf

I just upgraded from:

amqplib==1.0.2
celery==3.0.11
django-celery==3.0.10
kombu==2.4.7

to

amqp==1.0.6
celery==3.0.12
django-celery==3.0.11
kombu==2.5.3

After upgrading, attempting to launch celeryd with python manage.py celeryd fails with:

Traceback (most recent call last):
  File "/venv/lib/python2.6/site-packages/celery/worker/__init__.py", line 347, in start
    component.start()
  File "/venv/lib/python2.6/site-packages/celery/worker/consumer.py", line 389, in start
    self.reset_connection()
  File "/venv/lib/python2.6/site-packages/celery/worker/consumer.py", line 736, in reset_connection
    self.reset_pidbox_node()
  File "/venv/lib/python2.6/site-packages/celery/worker/consumer.py", line 679, in reset_pidbox_node
    callback=self.on_control)
  File "/venv/lib/python2.6/site-packages/kombu/pidbox.py", line 71, in listen
    consumer.consume()
  File "/venv/lib/python2.6/site-packages/kombu/messaging.py", line 398, in consume
    self._basic_consume(T, no_ack=no_ack, nowait=False)
  File "/venv/lib/python2.6/site-packages/kombu/messaging.py", line 519, in _basic_consume
    no_ack=no_ack, nowait=nowait)
  File "/venv/lib/python2.6/site-packages/kombu/entity.py", line 571, in consume
    nowait=nowait)
  File "/venv/lib/python2.6/site-packages/amqp/channel.py", line 1767, in basic_consume
    (60, 21),  # Channel.basic_consume_ok
  File "/venv/lib/python2.6/site-packages/amqp/abstract_channel.py", line 68, in wait
    self.channel_id, allowed_methods)
  File "/venv/lib/python2.6/site-packages/amqp/connection.py", line 239, in _wait_method
    self.wait()
  File "/venv/lib/python2.6/site-packages/amqp/abstract_channel.py", line 70, in wait
    return self.dispatch_method(method_sig, args, content)
  File "/venv/lib/python2.6/site-packages/amqp/abstract_channel.py", line 84, in dispatch_method
    raise AMQPError('Unknown AMQP method %r' % method_sig)
TypeError: not all arguments converted during string formatting

Inspecting with the debugger, it looks like method_sig is a two-tuple of integers, hence the error. Changing the formatting string to accept two arguments doesn't fix the real problem, however; celeryd still crashes with the Unknown AMQP method error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions