Bug 872934
Summary: | Unit test causing segfault on clustered broker | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise MRG | Reporter: | Petr Matousek <pematous> | ||||||||||||||
Component: | qpid-cpp | Assignee: | mick <mgoulish> | ||||||||||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Petr Matousek <pematous> | ||||||||||||||
Severity: | urgent | Docs Contact: | |||||||||||||||
Priority: | high | ||||||||||||||||
Version: | Development | CC: | freznice, iboverma, jross, lzhaldyb, mcressma | ||||||||||||||
Target Milestone: | 2.3 | Keywords: | Regression | ||||||||||||||
Target Release: | --- | ||||||||||||||||
Hardware: | Unspecified | ||||||||||||||||
OS: | Unspecified | ||||||||||||||||
Whiteboard: | |||||||||||||||||
Fixed In Version: | qpid-cpp-0.18-10 | Doc Type: | Bug Fix | ||||||||||||||
Doc Text: | Story Points: | --- | |||||||||||||||
Clone Of: | Environment: | ||||||||||||||||
Last Closed: | 2013-03-19 16:38:38 UTC | Type: | Bug | ||||||||||||||
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
Petr Matousek
2012-11-04 12:48:23 UTC
NOTE: this was also seen on rhel6 Created attachment 637988 [details]
clustered broker log (5672)
Created attachment 638000 [details]
clustered broker log (5673)
Created attachment 638007 [details]
clustered broker log (5672)
Created attachment 638008 [details]
clustered broker log (5673)
Created attachment 638009 [details]
broker coredump (5672)
Created attachment 638010 [details]
broker coredump (5673)
This problem introduced to the 0.18-mrg branch at this point: Bug 869002 - QPID-4394 sha: 795e416d4a3a07c655ae47e23c48b7244436a87c Broker::createQueue thinks it has created the queue. Cluster::deliverToQueue disagrees. ...still investigating... partial fix: to avoid the SEGV, in file src/qpid/cluster/Cluster.cpp in fn Cluster::deliverToQueue in the code block if ( ! q ) there should be a return; after the call to leave(l); Otherwise, control will pass to the code below that block, and we will attempt to deliver a message to a queue that we already know to be nonexistent, using a pointer that is null. This change must definitely be made, but it is still only a partial fix, as the test in question still fails. ...still investigating... The SEGV has been fixed by a recent checkin that added a throw to the code mentioned in comment 10, above. ( The fix came from Alan's checkin for BZ 875660 ) I believe that the continuing test failure is benign, and only indicates that the testing code needs to be made a little smarter. ( I will explain in the new BZ. ) Please redefine this bug as concerning the SEGV only. I am moving the failure of the test to a new BZ. new BZ is 878638. The SEGV has been fixed, however the above mentioned test is still failing and causing the broker to shut down due to cluster delivery to non-existent queue. This issue is tracked by bug 878638. Verified on rhel5.9 and rhel6.3 (x86_64, i386) packages used for testing: qpid-cpp-*-0.18-10 -> VERIFIED |