IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    celery worker启动时”Segmentation fault” (core dumped)

    master发表于 2014-09-01 02:38:16
    love 0

    在我的Ubuntu 14.04 上, 使用”celery worker”命令启动celery worker时,遇到”Segmentation fault” (core dumped),如下:

    View Code BASH
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    jay@jay-linux:~/workspace/aew$ celery -A aew worker
     
     -------------- celery@jay-linux v3.1.13 (Cipater)
    ---- **** ----- 
    --- * ***  * -- Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty
    -- * - **** --- 
    - ** ---------- [config]
    - ** ---------- .> app:         aew:0x7fd4b547af90
    - ** ---------- .> transport:   amqp://aew:**@192.168.217.188:5672/aew
    - ** ---------- .> results:     amqp
    - *** --- * --- .> concurrency: 4 (prefork)
    -- ******* ---- 
    --- ***** ----- [queues]
     -------------- .> celery           exchange=celery(direct) key=celery
     
     
    Segmentation fault (core dumped)

    后来发现时系统中的 python-librabbitmq的问题,遇到这个错误的系统中的python-librabbitmq版本为1.0.3-0ubuntu1,可用命令:dpkg -l | grep python-librabbitmq 来查询.
    解决方案有2个:
    1. 升级python-librabbitmq到新的版本,如 1.5.2 ,可以用通过.deb包或apt-get命令来升级,也可以用pip来安装.我用pip安装默认就到1.5.2版本了,如下:

    View Code BASH
    1
    2
    
    jay@jay-linux:~$ sudo apt-get remove  python-librabbitmq    #删除原来的包
    jay@jay-linux:~$ sudo pip install librabbitmq

    2. 直接删除python-librabbitmq包,这样celery会回到使用python-amqp包,这样也时可以的.

    其他人也发现过这个问题,见:

    https://bugs.launchpad.net/ubuntu/+source/python-librabbitmq/+bug/1353269

    Original article: celery worker启动时”Segmentation fault” (core dumped)

    ©2015 笑遍世界. All Rights Reserved.



沪ICP备19023445号-2号
友情链接