Bug 1026327 - qpid-cpp-client does not throw exceptions with amqp 1.0 protocol
Summary: qpid-cpp-client does not throw exceptions with amqp 1.0 protocol
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp
Version: 3.0
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: 3.0
: ---
Assignee: Gordon Sim
QA Contact: Zdenek Kraus
URL:
Whiteboard:
Depends On:
Blocks: 1010399
TreeView+ depends on / blocked
 
Reported: 2013-11-04 12:43 UTC by Zdenek Kraus
Modified: 2015-01-21 12:57 UTC (History)
4 users (show)

Fixed In Version: qpid-cpp-0.22-25.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Apache JIRA QPID-5289 0 None None None Never

Description Zdenek Kraus 2013-11-04 12:43:50 UTC
Description of problem:
When (correct) Exception should be thrown, with amqp 1.0 only "Connection closed by peer" is thrown.

for example: when qpid.max_count is exceeded, or when message larger than qpid.paging pagesize is sent

Version-Release number of selected component (if applicable):
qpid-cpp-0.22-23

How reproducible:
100%

Steps to Reproduce:
1. ./drain "xx;{create:always, node: { 'x-declare': { 'arguments': { 'qpid.max_count' : 5, 'qpid.flow_stop_count': 0, 'qpid.flow_start_count': 0 }}}}"
2. ./spout -c 5 "xx"
3. ./spout --connection-options "{'protocol': 'amqp1.0'}"  "xx"
4. ./spout  "xx"

Actual results:
[3] AMQP 1.0
Connection closed by peer

[4] AMQP0.10
2013-11-04 13:39:04 [Client] warning Exception received from broker: resource-limit-exceeded: resource-limit-exceeded: resource-limit-exceeded: Maximum depth exceeded on xx: current=[count: 5, size: 455], max=[count: 5, size: 104857600] (/builddir/build/BUILD/qpid-0.22/cpp/src/qpid/broker/Queue.cpp:1667) [caused by 3 \x00:\x00]
2013-11-04 13:39:04 [Client] warning Closing connection due to Connection is not open.
2013-11-04 13:39:04 [Client] warning Exception received from broker: resource-limit-exceeded: resource-limit-exceeded: resource-limit-exceeded: Maximum depth exceeded on xx: current=[count: 5, size: 455], max=[count: 5, size: 104857600] (/builddir/build/BUILD/qpid-0.22/cpp/src/qpid/broker/Queue.cpp:1667) [caused by 1 \x00:\x00]
Failed to connect (reconnect disabled)

Expected results:
both protocols should throw correct exceptions

Additional info:

Comment 1 Gordon Sim 2013-11-04 16:09:33 UTC
Fixed upstream: https://svn.apache.org/r1538658

Comment 2 Zdenek Kraus 2014-01-06 16:16:12 UTC
This was tested on RHEL 6.5 i686, x86_64 with following packages:

qpid-cpp-server-0.22-30.el6
qpid-cpp-server-xml-0.22-30.el6
qpid-proton-debuginfo-0.6-1.el6
qpid-cpp-debuginfo-0.22-30.el6
qpid-jca-0.22-1.el6
qpid-jca-xarecovery-0.22-1.el6
qpid-qmf-devel-0.22-25.el6
qpid-tools-0.22-7.el6
qpid-proton-c-0.6-1.el6
qpid-qmf-0.22-25.el6
python-qpid-qmf-0.22-25.el6
qpid-proton-c-devel-0.6-1.el6
qpid-java-example-0.22-5.el6
python-qpid-0.22-9.el6
qpid-cpp-client-0.22-30.el6
qpid-cpp-client-ssl-0.22-30.el6
qpid-cpp-server-devel-0.22-30.el6
qpid-java-client-0.22-5.el6
qpid-cpp-server-ssl-0.22-30.el6
qpid-java-common-0.22-5.el6
qpid-cpp-client-devel-0.22-30.el6
qpid-cpp-server-store-0.22-30.el6
qpid-cpp-client-devel-docs-0.22-30.el6

fix work as expected.


Note You need to log in before you can comment on or make changes to this bug.