Bug 501789

Summary: segfault in clusters ErrorCheck::delivered()
Product: Red Hat Enterprise MRG Reporter: Gordon Sim <gsim>
Component: qpid-cppAssignee: Alan Conway <aconway>
Status: CLOSED ERRATA QA Contact: Jan Sarenik <jsarenik>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 1.1.1CC: jsarenik
Target Milestone: 1.1.2   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-06-12 17:39:00 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
reproducer none

Description Gordon Sim 2009-05-20 17:54:12 UTC
Created attachment 344853 [details]
reproducer

Description of problem:

Cluster nodes crash, apparently after an application error has been signalled (on all nodes).

Version-Release number of selected component (if applicable):

qpidd-0.5.752581-5.el5 (and qpidd-0.5.752581-6.el5)

How reproducible:

100% with attached reproducer

Steps to Reproduce:
1. start multi-node cluster
2. run attached test program against one of nodes
  
Actual results:

segfaults on all nodes

Expected results:

no segfaults on any nodes

Additional info:

Comment 2 Alan Conway 2009-05-21 12:02:42 UTC
Yes.

Comment 3 Jan Sarenik 2009-05-26 07:41:17 UTC
These are steps to reproduce/verify:

---------------------------------------------------------------
# yum install qpidd-devel qpidd-cluster
# edit /etc/ais/openais.conf - networkaddr

echo -n "Compiling sender.cpp... "
g++ -I/usr/include/qpid-boost -lqpidclient sender.cpp -o sender \
  && echo "done"

service openais restart
setenforce 0
qpidd -t -p 12345 --cluster-name=jasan \
  --data-dir=/tmp/qpidd --auth=no &> qpidd.log &
qpidd -t -p 12346 --cluster-name=jasan \
  --data-dir=/tmp/qpidd2 --auth=no &> qpidd2.log &

./sender localhost 12345 &> sender.log &

let i=1
echo -n "Running: "
while pgrep qpidd &> /dev/null
do
  echo -n "*"
  if [ $i -eq 100 ]
  then
    break
  fi
  let i++
  sleep 1
done
echo

pkill sender
pkill qpidd
---------------------------------------------------------------

Comment 4 Jan Sarenik 2009-05-26 08:30:54 UTC
Reproduced on
  qpidd-cluster-0.5.752581-5.el5

Verified on
  qpidd-cluster-0.5.752581-7.el5

RHEL5.3 i386 and x86_64

Comment 6 errata-xmlrpc 2009-06-12 17:39:00 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2009-1097.html