Bug 811469

Summary: Cqpid python module crashes in init_cqpid () at cqpid.cpp:13948 when loaded by RHEL5.8 python (qmf-tool)
Product: Red Hat Enterprise MRG Reporter: Frantisek Reznicek <freznice>
Component: qpid-qmfAssignee: Ted Ross <tross>
Status: CLOSED CURRENTRELEASE QA Contact: Frantisek Reznicek <freznice>
Severity: high Docs Contact:
Priority: high    
Version: DevelopmentCC: esammons, iboverma, jross
Target Milestone: 2.1.2   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qpid-qmf-0.14-9.el5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 806888    

Description Frantisek Reznicek 2012-04-11 07:56:23 UTC
Description of problem:

Cqpid python module (python-qpid-qmf) crashes (SIGSEGV) when loaded by RHEL5.8 python qmf-tool:

  [root@dhcp-27-79 0.14]# qmf-tool
  Segmentation fault
  [root@dhcp-27-79 0.14]# ulimit -c unlimited
  [root@dhcp-27-79 ~]# service qpidd restart
  Stopping Qpid AMQP daemon:                                 [  OK  ]
  Starting Qpid AMQP daemon:                                 [  OK  ]
  [root@dhcp-27-79 ~]# qmf-tool
  Segmentation fault (core dumped)

Looking more in detail:

  [root@dhcp-27-79 ~]# file core.25714
  core.25714: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from 'qmf-tool'
  [root@dhcp-27-79 ~]# file `which qmf-tool`
  /usr/bin/qmf-tool: python script text executable
  [root@dhcp-27-79 ~]# gdb `which python` core.25714
  GNU gdb (GDB) Red Hat Enterprise Linux (7.0.1-42.el5)
  ...
  Core was generated by `/usr/bin/python /usr/bin/qmf-tool'.
  Program terminated with signal 11, Segmentation fault.
  #0  init_cqpid () at cqpid.cpp:13948
  13948   cqpid.cpp: No such file or directory.
          in cqpid.cpp
  (gdb) info threads
  * 1 Thread 0xb7fd96c0 (LWP 25714)  init_cqpid () at cqpid.cpp:13948
  (gdb) t a a bt
  
  Thread 1 (Thread 0xb7fd96c0 (LWP 25714)):
  #0  init_cqpid () at cqpid.cpp:13948
  #1  0x00d7c638 in _PyImport_LoadDynamicModule () from /usr/lib/libpython2.4.so.1.0
  #2  0x00d7a21e in ?? () from /usr/lib/libpython2.4.so.1.0
  #3  0x00d7a9b3 in ?? () from /usr/lib/libpython2.4.so.1.0
  #4  0x00d7ae72 in ?? () from /usr/lib/libpython2.4.so.1.0
  #5  0x00d7b088 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0
  #6  0x00d5ab2e in ?? () from /usr/lib/libpython2.4.so.1.0
  #7  0x00d279bd in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0
  #8  0x00cfd087 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0
  #9  0x00d5e07c in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.4.so.1.0
  #10 0x00d5ffa7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
  #11 0x00d64856 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
  #12 0x00d648e3 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0
  #13 0x00d7934d in PyImport_ExecCodeModuleEx () from /usr/lib/libpython2.4.so.1.0
  #14 0x00d798f3 in ?? () from /usr/lib/libpython2.4.so.1.0
  #15 0x00d7a9b3 in ?? () from /usr/lib/libpython2.4.so.1.0
  #16 0x00d7ae72 in ?? () from /usr/lib/libpython2.4.so.1.0
  #17 0x00d7b088 in PyImport_ImportModuleEx () from /usr/lib/libpython2.4.so.1.0
  #18 0x00d5ab2e in ?? () from /usr/lib/libpython2.4.so.1.0
  #19 0x00d279bd in PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0
  #20 0x00cfd087 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0
  #21 0x00d5e07c in PyEval_CallObjectWithKeywords () from /usr/lib/libpython2.4.so.1.0
  #22 0x00d5ffa7 in PyEval_EvalFrame () from /usr/lib/libpython2.4.so.1.0
  #23 0x00d64856 in PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0
  #24 0x00d648e3 in PyEval_EvalCode () from /usr/lib/libpython2.4.so.1.0
  #25 0x00d81708 in ?? () from /usr/lib/libpython2.4.so.1.0
  #26 0x00d82e18 in PyRun_SimpleFileExFlags () from /usr/lib/libpython2.4.so.1.0
  #27 0x00d834fa in PyRun_AnyFileExFlags () from /usr/lib/libpython2.4.so.1.0
  #28 0x00d89fb8 in Py_Main () from /usr/lib/libpython2.4.so.1.0
  #29 0x080485b2 in main ()
  (gdb) quit
  [root@dhcp-27-79 ~]# rpm -V python-qpid-qmf
  [root@dhcp-27-79 ~]# rpm -ql python-qpid-qmf | grep cqpid
  /usr/lib/python2.4/site-packages/_cqpid.so
  /usr/lib/python2.4/site-packages/cqpid.py
  /usr/lib/python2.4/site-packages/cqpid.pyc
  /usr/lib/python2.4/site-packages/cqpid.pyo



Version-Release number of selected component (if applicable):
  python-qpid-0.14-6.el5
  qpid-cpp*-0.14-15.el5
  qpid-java-*0.14-3.el5
  qpid-qmf-*0.14-7.el5
  qpid-tests-0.14-1.el5
  qpid-tools-0.14-2.el5
  saslwrapper-*0.10-4.el5
  sesame-1.0-3.el5


How reproducible:
100%

Steps to Reproduce:
1. service qpidd restart
2. qmf-tool
3.
  
Actual results:
qmf-tool segfaults, cqpid is not loadable.

Expected results:
qmf-tool should work, cqpid should be loadable.

Additional info:

Comment 1 Frantisek Reznicek 2012-04-11 12:21:22 UTC
Seen on both RHEL 5.8 i386 / x86_64.

Comment 2 Ted Ross 2012-04-16 14:58:47 UTC
Please refer to the upstream issue:

https://issues.apache.org/jira/browse/QPID-3946

Fixed in Revision #1325977

Comment 4 Frantisek Reznicek 2012-04-17 08:41:21 UTC
The issue has been fixed and qmf-tool do not segfault anymore, tested on RHEL 5.8 i386 / x86_64 on packages:
  python-qpid-0.14-6.el5
  python-qpid-qmf-0.14-9.el5
  python-saslwrapper-0.10-4.el5
  qpid-cpp-client-0.14-14.el5
  qpid-cpp-client-devel-0.14-14.el5
  qpid-cpp-client-devel-docs-0.14-14.el5
  qpid-cpp-client-rdma-0.14-14.el5
  qpid-cpp-client-ssl-0.14-14.el5
  qpid-cpp-server-0.14-14.el5
  qpid-cpp-server-cluster-0.14-14.el5
  qpid-cpp-server-devel-0.14-14.el5
  qpid-cpp-server-rdma-0.14-14.el5
  qpid-cpp-server-ssl-0.14-14.el5
  qpid-cpp-server-store-0.14-14.el5
  qpid-cpp-server-xml-0.14-14.el5
  qpid-java-client-0.14-3.el5
  qpid-java-common-0.14-3.el5
  qpid-java-example-0.14-3.el5
  qpid-qmf-0.14-9.el5
  qpid-qmf-devel-0.14-9.el5
  qpid-tests-0.14-1.el5
  qpid-tools-0.14-2.el5
  rh-qpid-cpp-tests-0.14-14.el5
  ruby-qpid-qmf-0.14-9.el5
  ruby-saslwrapper-0.10-4.el5
  saslwrapper-0.10-4.el5
  saslwrapper-devel-0.10-4.el5
  sesame-1.0-3.el5
  sesame-debuginfo-1.0-3.el5

-> VERIFIED