"celery worker" crashes on startup when python-librabbitmq is used

Bug #1353269 reported by Paul Collins
38
This bug affects 8 people
Affects Status Importance Assigned to Milestone
python-librabbitmq (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

On a vanilla trusty install with rabbitmq-server and celeryd installed, "celery worker" crashes as follows:

$ dpkg-query -W python-librabbitmq rabbitmq-server python-amqp librabbitmq1 celeryd
celeryd 3.1.6-1ubuntu1
librabbitmq1 0.4.1-1
python-amqp 1.3.3-1ubuntu1
python-librabbitmq 1.0.3-0ubuntu1
rabbitmq-server 3.2.4-1
$ celery worker
[2014-08-06 05:19:00,142: WARNING/MainProcess] /usr/lib/python2.7/dist-packages/celery/apps/worker.py:159: CDeprecationWarning:
Starting from version 3.2 Celery will refuse to accept pickle by default.

The pickle serializer is a security concern as it may give attackers
the ability to execute any command. It's important to secure
your broker from unauthorized access when using pickle, so we think
that enabling pickle should require a deliberate action and not be
the default choice.

If you depend on pickle then you should set a setting to disable this
warning and to be sure that everything will continue working
when you upgrade to Celery 3.2::

    CELERY_ACCEPT_CONTENT = ['pickle', 'json', 'msgpack', 'yaml']

You must only enable the serializers that you will actually use.

  warnings.warn(CDeprecationWarning(W_PICKLE_DEPRECATED))

 -------------- celery@juju-pjdc-lcy02-machine-4 v3.1.6 (Cipater)
---- **** -----
--- * *** * -- Linux-3.13.0-32-generic-x86_64-with-Ubuntu-14.04-trusty
-- * - **** ---
- ** ---------- [config]
- ** ---------- .> broker: amqp://guest@localhost:5672//
- ** ---------- .> app: default:0x7ff5367585d0 (.default.Loader)
- ** ---------- .> concurrency: 1 (prefork)
- *** --- * --- .> events: OFF (enable -E to monitor this worker)
-- ******* ----
--- ***** ----- [queues]
 -------------- .> celery exchange=celery(direct) key=celery

Segmentation fault (core dumped)

If I remove python-librabbitmq so that celery falls back to python-amqp, "celery worker" starts up and works correctly.

I have also discovered that a python-rabbitmq built from version 1.5.2 sources with its embedded copy of rabbitmq-c 0.5.0 also works correctly.

I have attached a backtrace but it is not too useful as python-librabbitmq does not appear to make debug symbols available, and it occupies the second and third frames in the stack when the crash happens.

Revision history for this message
Paul Collins (pjdc) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in python-librabbitmq (Ubuntu):
status: New → Confirmed
Revision history for this message
Daniele Viganò (daniele-vigano) wrote :

We have the same problem, any news on this topic?

Revision history for this message
nima (nim4n) wrote :

I have the same problem!

Revision history for this message
Abhishek Jaiswal (jkabhishek) wrote :

removing python-librabbitmq
     sudo apt-get remove python-librabbitmq
install librabbitmq
    sudo pip install librabbitmq

Solved !
Cheers

Revision history for this message
Petar Maric (petar-maric) wrote :

Sorry for intruding, but is anyone working on this?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.