Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 568788

Summary: example sender coredumps when the queue is limited
Product: Red Hat Enterprise MRG Reporter: Jan Sarenik <jsarenik>
Component: qpid-cppAssignee: Andrew Stitcher <astitcher>
Status: CLOSED ERRATA QA Contact: Jan Sarenik <jsarenik>
Severity: high Docs Contact:
Priority: urgent    
Version: DevelopmentCC: gsim
Target Milestone: 1.3   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-20 11:30:57 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:
Bug Depends On:    
Bug Blocks: 505287    
Attachments:
Description Flags
Script that at least reproduces the bug (may be suitable for verification as well)
none
gdb corefile trace
none
Verification tarball containing scripts. none

Description Jan Sarenik 2010-02-26 16:04:02 UTC
Created attachment 396575 [details]
Script that at least reproduces the bug (may be suitable for verification as well)

When I was trying to verify Bug 505287 I found this issue
and Gordon said I should file a new bug for it is different.

Versions used are obvious from the output of script but generally
are the current -candidate ones.

How reproducible:
  100% (tested on RHEL5 i386 and x86_64)

Steps to Reproduce:
1. Unpack the attached tarball and run the script "./runtest".
  
Actual results:
  corefile dumped, the messages are lost (probably not sent at all)

Expected results:
  all messages sent and received seamlessly

--------------------------------------------------------------------------
[root@rhel5x bz505827]# ./runtest
redhat-release-5Server-5.4.0.3 x86_64
qpid-cpp-server-store-0.7.908272-1.el5
qpid-cpp-client-devel-0.7.908272-1.el5
python-qpid-0.5.904641-1.el5
Compiling... done
Configuring queue... ok
Running sender, logging to sender.log...
---------- reciever's output follows
one
two
three
four
five
== receiver exited with 0
---------- sender.log follows
2010-02-26 16:07:00 warning Exception received from broker: resource-limit-exceeded: resource-limit-exceeded: Policy exceeded on test-queue, policy: size: max=104857600, current=19; count: max=5, current=5; type=reject (qpid/broker/QueuePolicy.cpp:83) [caused by 5 \x00:\x00]
Failed: resource-limit-exceeded: resource-limit-exceeded: Policy exceeded on test-queue, policy: size: max=104857600, current=19; count: max=5, current=5; type=reject (qpid/broker/QueuePolicy.cpp:83)
./runtest: line 37:  2999 Done                    for m in one two three four five six seven "" eight nine ten;
do
    echo $m;
done
      3000 Segmentation fault      (core dumped) | ./sender --send-eos 1
==================================================
 Core file dumped. Core analyzation part started.
==================================================
gdb-6.8-37.el5
qpid-cpp-mrg-debuginfo-0.7.908272-1.el5
elfutils-devel-0.137-3.el5
Output files: core.3000.txt

Comment 1 Jan Sarenik 2010-02-26 16:08:17 UTC
Created attachment 396576 [details]
gdb corefile trace

Comment 2 Jan Sarenik 2010-02-26 16:08:44 UTC
Store module is not needed for this bug to appear.

Comment 3 Jan Sarenik 2010-03-16 14:14:30 UTC
What's the progress here, please? This bug is blocking another one
from being verified. If I can help, let me know because most of
the bugs in my list are currently stalled.

Comment 5 Gordon Sim 2010-04-12 13:38:23 UTC
Might this be a duplicate of bug 580824? I.e. deletion of connection impl before dispatch handle is deactivated in the exceptional cases?

Comment 6 Gordon Sim 2010-04-19 08:21:51 UTC
Resolved by r935275.

Comment 7 Jan Sarenik 2010-05-25 13:01:04 UTC
Created attachment 416395 [details]
Verification tarball containing scripts.

See README after extracting the tarball.

Verified on RHEL5.5 i386 and x86_64.

-------------------------------------------------------
root@mrg-qe-12:~/bz505827# ./runtest 
redhat-release-5Server-5.5.0.2 i686
qpid-cpp-server-store-0.7.946106-1.el5
qpid-cpp-client-devel-0.7.946106-1.el5
python-qpid-0.7.946106-1.el5
qpid-tools-0.7.946106-4.el5
Compiling... done
Configuring queue... ok
Running sender, logging to sender.log... 
---------- reciever's output follows
one
two
three
four
five
== receiver exited with 0
---------- sender.log follows
2010-05-25 14:58:02 warning Exception received from broker: resource-limit-exceeded: resource-limit-exceeded: Policy exceeded on test-queue, policy: size: max=104857600, current=19; count: max=5, current=5; type=reject (qpid/broker/QueuePolicy.cpp:85) [caused by 5 \x00:\x00]
Failed: resource-limit-exceeded: resource-limit-exceeded: Policy exceeded on test-queue, policy: size: max=104857600, current=19; count: max=5, current=5; type=reject (qpid/broker/QueuePolicy.cpp:85)
2010-05-25 14:58:02 warning Connection closed
TEST SUCCESSFUL

Comment 8 Jan Sarenik 2010-05-25 14:02:18 UTC
Verified on RHEL4 i386 and x86_64 with the same package build as above.